Und wie er das feststellen kann :
Delphi-Quellcode:
function IsExeRunning(const AExeName: string): boolean;
var
h: THandle;
p: TProcessEntry32;
begin
Result := False;
p.dwSize := SizeOf(p);
h := CreateToolHelp32Snapshot(TH32CS_SnapProcess, 0);
try
Process32First(h, p);
repeat
Result := AnsiUpperCase(AExeName) = AnsiUpperCase(p.szExeFile);
until Result or (not Process32Next(h, p));
finally
CloseHandle(h);
end;
end;
Ohne Gewähr. Ist Fundstück, was bei mir funktioniert.