Autor Beitrag
Crowbar
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 180

WinXP, SP2
D6 Enterprise
BeitragVerfasst: Do 27.10.05 11:00 
Hi,
mit FindWindow überprüft man, ob ein bestimmtes Programm (z.B. "Test") "aktiv" ist.

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
begin
 wnd:=FindWindow('TMainForm','Test');
  if wnd <> 0 then
   begin
     showmessage('gefunden');
   end
  else
   showmessage('nicht gefunden');
end;


Soweit klappt das auch. Nun habe ich ein Problem, dass sich bei meinem Programm der Fenstertitel ändern kann:
z.B.
Titel "Test", aber auch Titel "Test - Dokument1"
Dadurch kann ich natürlich das Programm-Handle mit "FindWindow('TMainForm','Test')" nicht mehr finden.
Gibt es die Möglichkeit zu überprüfen, ob ein Programm aktiv ist, ohne eine Überprüfung des "Fenstertitels"?

Crowbar
P.S. Ich benötige jedoch das Handle ...
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Do 27.10.05 11:03 
Die einfachste Lösung wäre eine möglichst eindeutige Fensterklasse zu vergeben und die komplizierte mit EnumWindows alle Fenster raussuchen und sich das passende rauszupicken.
Crowbar Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 180

WinXP, SP2
D6 Enterprise
BeitragVerfasst: Do 27.10.05 12:13 
Danke Luckie!
Damit klappt es! :D

Cu
Crowbar