Zitat von
hoika:
Hallo,
warum willst du etwas speichern,
was sich bei jedem Start eines Programm ändert ???
Das
Handle wird von Windows vergeben.
Startest du den Editor, beendest ihn und
startest ihn neu, hat er ein anderes
Handle.
Wenn du dir nur etwas merken willst,
erzeuge eine Klasse
type
TAppWindows = class
sAppName: String;
Handle: WORD
end
und packe die in eine TList;
Ansonsten FindWindow, FindWindowEx.
Heiko
Warum sind die Handles anders beim Editor nach erneutem Start ? Gerade mit Notepad ist es noch einfach den einzufangen. Dein Tipp mit FindWindowEx könnte hier noch was bringen, da könnte ich die erweiterten Fenster erhalten.
Achso,nochwas: Ich habe eine separate Config.exe, in der vom User die später nutzbaren extApps eingetragen werden.
Beim ersten Start der Apps ist alles kein Problem, vielmehr das nachträgliche einfangen des "richtigen" Mainfensters. Ich frage in meinem Programm ab, ob ein ext. App schon gestartet ist und wenn ja, dann Fenster nach vorne holen....
Hatte das App ein Copyright-Fenster zu Beginn, welches man wegklicken muss, dann habe ich auch nur das
Handle...Mainwindow-
Handle habe ich nicht.
Da sich viele Progs unterschiedlich verhalten, dachte ich mir, speziell für diesen Fall das pro App auszulagern (habe ja schon eine ini, in der die Apps mit Pfad aus der Config drinstehen) und die Fenster abzuspeichern.
Der User könnte im schlimmsten Fall die ini bearbeiten und die Fensterreihenfolge bzw Mainwindow nach oben schieben. Starten ginge dann über die exe, Fenster einfangen über das erste eingetragene Window. Falls noch weitere Fenster vorhanden, stehen die ab der 2.ten Stelle und werden dann falls gefunden, auch nach vorne vor das Mainwindow geholt...
Naja..etwas komplex der Gedanke....aber brauche ne Lösung, die funktioniert...
Gruß,bluescreen25
...und ich dachte, Delphi ist ein Programmgenerator mit nur einem Button......tzzz