Michael Gorischek
2004-01-27 12:30:55 UTC
Hi,
damit mein Programm nur einmal (gleichzeitig) laufen kann hab ich mir
folgenden Code (von einem Bildschirmschoner) hineinkopiert:
procedure PreventToRunTwice;
var otherHnd : HWND;
begin
otherHnd:=FindWindow('TApplication','XYZ');
if otherHnd<>0 then begin
SetForegroundWindow(otherHnd);
halt;
end;
end;
XYZ steht für mein Programm. Allerdings findet die Routine immer ein
Programm und bricht dann sofort ab. Warum?
Aufgerufen wird die procedure gleich am Anfang bevor noch irgendetwas
initialisiert wird.
Danke im Voraus!
lg Michi
damit mein Programm nur einmal (gleichzeitig) laufen kann hab ich mir
folgenden Code (von einem Bildschirmschoner) hineinkopiert:
procedure PreventToRunTwice;
var otherHnd : HWND;
begin
otherHnd:=FindWindow('TApplication','XYZ');
if otherHnd<>0 then begin
SetForegroundWindow(otherHnd);
halt;
end;
end;
XYZ steht für mein Programm. Allerdings findet die Routine immer ein
Programm und bricht dann sofort ab. Warum?
Aufgerufen wird die procedure gleich am Anfang bevor noch irgendetwas
initialisiert wird.
Danke im Voraus!
lg Michi