ok die sache ist etwas kompliziert...ich habe ein programm in delphi 2.0 geschrieben, welche die komponente
SuperTimer benötigt...jetzt wollte ich diese
Prüfen, ob EXE-Datei schon läuft-Prozedur (siehe oben) einbinden, brauche unter delphi 2.0 aber die psApi. des weiteren habe ich delphi6 und delphi7 auf meinem rechner -> problem: SuperTimer geht nur bis delphi4
jetzt gibt es drei möglichkeiten:
1. man nimmt die psApi von delphi6 und bindet sie irgendwie in delphi2 ein
2. man sucht sich eine andere prozedur, mit der man die aktivität eines anderen programmes prüfen kann
in einem anderen thread von mir habe ich von Luckie den vorschlag
CreateToolHelp32Snapshot bekommen...wie geht das??
3. ihr sagt mir, was an dieser prozedur falsch ist, dass sie unter win2000/xp nicht funktioniert:
Delphi-Quellcode:
function ExeFileIsRunning(ExeFile: string): boolean;
var
H:word;
begin
H := CreateFile(PChar(ExeFile),
GENERIC_READ,
0,
nil,
OPEN_EXISTING,
0,
0);
Result := (H >= 65535);
CloseHandle(H);
end;
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
If ExeFileIsRunning('C:\Broca.exe') then
ShowMessage('Programm läuft!')
else ShowMessage('Programm läuft nicht!');
end;
vielen dank für eure hilfe!