mikrocontroller.net

Forum: PC-Programmierung Parameter an Notepad übergeben, möglich?


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
Autor: Gustav K. (hauwech)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

habe hier bei manchen Programmen in der Startleiste eine Verknüpfung zu 
einem kleinen Infotext hinzugefügt, den ich im Notepad wie folgt 
aufrufe: C:\Programme\ProgXYZ\Hinweis.txt

Das funktioniert auch, leider wird als Fenstergröße immer die letzte 
Größe verwendet, was eigentlich immer unpassend ist. Kann man dem Aufruf 
Parameter bzgl. Fenstergröße mitgeben?

Bei der Gelegenheit:
Die Position des Fensters mit zu übergeben wäre auch nicht verkehrt.

Nachtrag: BS ist WinXP SP3

Grüße von Gustav

: Bearbeitet durch User
Autor: Christian M. (Firma: magnetmotor.ch) (chregu) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Man kann die Fenstergrösse z.B. im Nachhinein mit AutoIt (mit WinMove) 
ändern.

Gruss Chregu

Autor: zyxw (Gast)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
Die Daten stehen in der Registry, welche man mit regedit.exe ändern 
kann, auch im batch-bode oder mit einer .reg-Datei.

Autor: zyxw (Gast)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
Der Schlüssel heißt
HKEY_USERS\S-1-5-21- .... \Software\Microsoft\Notepad
Dort gibt es 27 Einträge, unter anderem Statusbar, das ich immer auf 1 
setze, und eben iWindowPosX, iWindowPosY, iWindowPosDX, iWindowPosDY.
Mit einem Rechtsklick auf den Schlüsselnamen kann man ihn in eine 
.reg-Datei exportieren. Dann z.B. mit einem Editor ändern.

Doppelklick auf die .reg-Datei importiert sie wieder.
Das geht auch mit dem Aufruf regedit myfile.reg
Vorsicht bei Arbeiten an der Registry, schnell hat man ein schlecht 
laufendes System, wenn man nicht weiß, was man tut.

Autor: nur zufällig hier (Gast)
Datum:

Bewertung
-2 lesenswert
nicht lesenswert
Ein Fenster mit einem Textfeld (was evtl. Text aua ner Datei läd) ist 
ruck zuck und schmal mit Pascal, c o.ä programmiert.

Ansonsten evtl. so etwas
https://de.m.wikipedia.org/wiki/AutoIt

Autor: nur zufällig hier (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
BTW: Mit dieser Freeware geht das ootb
http://www.ghisler.com/lister/

Autor: Gustav K. (hauwech)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
zyxw schrieb:
> Der Schlüssel heißt
> HKEY_USERS\S-1-5-21- .... \Software\Microsoft\Notepad

Sorry, ich habe es mal wieder verwechselt: Mit Notepad meine ich diesen 
einfachen Editor, der standardmäßig mit dam Datentyp *.txt verknüpft 
ist. Wenn ich die Registry nach Editor absuche, findet sich nichts 
brauchbares. Wobei ich von der Registry gerne die Finger lassen würde.

Werde mir mal AutoIt und den Lister anschauen.

Autor: zyxw (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wir meinen das selbe Programm: notepad.exe
aka (auch bekannt als) Editor.
Suche nach dem Wert iWindowPosDX, er kommt nur zweimal vor,
nämlich unter HKEY_CURRENT_USER  und  HKEY_USERS

Viel Erfolg, das klappt schon!

Autor: Dr. Sommer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn man über das Win32 API ein Programm aufruft, gibt es eine 
Möglichkeit dem Programm mitzuteilen dass es maximiert starten soll 
(SW_MAXIMIZE an nShowCmd übergeben). Das hätte den Vorteil dass die 
Übergabe direkt läuft, nicht andere Instanzen vom Notepad beeinflusst 
und auch kein anderes Programm dazwischen funken kann. Man müsste ein 
kleines C Programm schreiben was das tut. Oder kann der "start" Befehl 
das vielleicht?

Autor: nur zufällig hier (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
So als genereller Hinw

Dr. Sommer schrieb:
> Wenn man über das Win32 API ein Programm aufruft, gibt es eine
> Möglichkeit dem Programm mitzuteilen dass es maximiert starten soll
> (SW_MAXIMIZE an nShowCmd übergeben).

So als genereller Hinweis. Das muss nicht in allen Fällen funktionieren. 
Das aufgerufene Programm kann das übersteuern.

Autor: Dr. Sommer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Klar, aber Microsoft hat den Notepad doch bestimmt vorbildlich 
implementiert...

Autor: Gustav K. (hauwech)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
zyxw schrieb:
> Wir meinen das selbe Programm: notepad.exe

OK, habe mich doppelt irritieren lassen: NotePad heißt auszuführende 
Datei, Editor ist der Programmname.

Worin besteht eigentlich der Unterschied bei den beiden Aufrufen:

- C:\WINDOWS\system32\notepad.exe C:\Programme\ProgXYZ\README.TXT
- C:\Programme\ProgXYZ\README.TXT

Ersteres wurde bei einer Installation von CD genau so eingerichtet.
Die zweite Möglichkeit bringt jedoch das gleiche Ergebnis.

Dr. Sommer schrieb:
> ...gibt es eine
> Möglichkeit dem Programm mitzuteilen dass es maximiert starten soll

Das kann ich hier auch in den Eigenschaften der Verknüpfung auswählen:

- Normales Fenster
- Minimiert
- Maximiert

Die beiden zusätzlichen Möglichkeiten bringen mich aber nicht weiter.
Ich möchte eine Fenstergröße und Fensterposition mit übergeben.

Autor: Gustav K. (hauwech)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
zyxw schrieb:
> ... und eben iWindowPosX, iWindowPosY, iWindowPosDX, iWindowPosDY.

Habe die Einträge in der Registry gefunden (Bild).
Die Werte würden auch für dieses Hinweisfenster passen.
Nur wie soll ich das zusammen mit der Hilfe aufrufen?

Die Verknüpfung sieht bisher so aus: C:\Programme\ProgXYZ\Hinweis.txt

Autor: Chr. M. (snowfly)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Eigentlich konnte man unter Windows immer die letzte
Fensterposition speichern wenn man es mit
"Shift-ALT-F4" beendet hat.

: Bearbeitet durch User
Autor: Gustav K. (hauwech)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die Fenstergröße und Position wird bei jedem Schließen gespeichert. Das 
ist eben mein Problem. War das letzte Fenster riesengroß und mein 
Hinweistext besteht nur aus einer Anmerkung, so wird die Anmerkung in 
eben diesem letzten riesengroßen Fenster dargestellt. Ebenso andersrum 
(eine Menge Text in einem zu kleinen Fenster). Also darf ich erst mal 
die Fenster verkleinern/vergrößern und durch die Gegend schieben.

Autor: Christian M. (Firma: magnetmotor.ch) (chregu) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hast Du die Texte immer in einer .txt Datei?

Du könntest alternativ, wieder mit AutoIt eine Message Box öffnen, z.B. 
mit:

https://autoit.de/onlinehilfe/functions/SplashTextOn.htm

Gruss Chregu

Autor: Heinz V. (heinz_v)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wandele die Texte in HTML, dann kannst Du mit den HTML Tags Grösse, 
Aussehen und Verhalten des Browserfensters steuern wie Du willst.

Autor: Gustav K. (hauwech)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Christian M. schrieb:
> Hast Du die Texte immer in einer .txt Datei?

Ja.

Heinz V. schrieb:
> Wandele die Texte in HTML, dann kannst Du mit den HTML Tags Grösse,
> Aussehen und Verhalten des Browserfensters steuern wie Du willst.

Das wäre eine gute Lösung, vielen Dank für den Tipp.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.