Autor Beitrag
Peter18
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 465
Erhaltene Danke: 2


Delphi4
BeitragVerfasst: Fr 06.12.13 14:22 
Ein freundliches Hallo an alle,

ich möchte in einem Programm (Delphi 4) feststellen, ob mein Mailer "Pegasus" gestartet ist. Die Funktion liefert mit konstanter Bosheit 0, egal ob Pegasus läuft oder nicht. Wenn ich die Funktion in "Auswerten/Ändern" teste erhalte ich irgend einen Wert. Der scheint jedoch eher zufällig zu sein, denn er ändert sich, aber nicht immer wenn ich Pegasus starte oder beende. Auch nil als Klassenname ändert nichts.

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
var
  H : HWND;

begin
   H := FindWindow(PChar('FRAME'),PChar('Pegasus Mail'));
   if H = 0 then messagebox(0,'Pegasus Mail is not running','Alert !',mb_ok);


Ich hoffe jemand kann mir das erklären, denn "FindWindow" scheint ja zu funktionieren.

Grüße von der sehr windigen Nordsee (Wer raus geht sollte einen Anker dabei haben!)

Peter
Einloggen, um Attachments anzusehen!
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 18731
Erhaltene Danke: 1631

W10 x64 (Chrome, IE11)
Delphi 10.2 Ent, Oxygene, C# (VS 2015), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Fr 06.12.13 15:06 
Bist du sicher, dass es nur ein passendes Fenster dort gibt? Hast du das eibnmal z.B. mit dem Window Detective geprüft?
Peter18 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 465
Erhaltene Danke: 2


Delphi4
BeitragVerfasst: Fr 06.12.13 15:50 
Hallo jaenicke,

habe es gerade geprüft: In der Liste taucht "FRAME" nur ein mal auf. Die Preisfrage ist der 2. Parameter. Wird auch auf Teilstring geprüft, b.z.w. ist der Text in der blauen Leiste gemeint? Hatte eigentlich auch mit dem gesamten Text geprüft, aber vielleicht ist mit den Anführungszeichen etwas falsch gelaufen.

Grüße von der Nordsee

Peter
Einloggen, um Attachments anzusehen!
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 18731
Erhaltene Danke: 1631

W10 x64 (Chrome, IE11)
Delphi 10.2 Ent, Oxygene, C# (VS 2015), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Sa 07.12.13 01:09 
Nein, es wird kein Teilstring geprüft. Wenn du das willst, musst du die Fenster alle durchgehen und selbst prüfen. Dafür gibt es Enumerationsfunktionen wie EnumWindows.
Peter18 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 465
Erhaltene Danke: 2


Delphi4
BeitragVerfasst: Sa 07.12.13 01:10 
Hallo,

es funktioniert jetzt mit "'Pegasus Mail - [Ordnerverwaltung - Neue Nachrichten (''Inbox'')]'"! warscheinlich hatte ich zuvor einen Fehler bei den Anführungszeichen. "Window Detective" war hilfreich, danke.

Grüße von der Nordsee

Peter