Delphi 4: Task-Manager befragen

Hallo Delphianer,

wie kann man in Delphi 4 herausfinden, ob ein Applikation schon gestartet wurde.
Ich gehe mal davon aus, daß man den Task-Manager dazu befragen muß, doch wie geht das.

Freundliche Grüße,

Manfred

Hallo Delphianer,

wie kann man in Delphi 4 herausfinden, ob
ein Applikation schon gestartet wurde.
Ich gehe mal davon aus, daß man den
Task-Manager dazu befragen muß, doch wie
geht das.

Geht auch prima ohne Taskman ;o)

mit API-Funktion FindWindow. Dazu muss allerdings der Klassenname des Fensters oder die Fenstercaption bekannt sein. Der Klassenname lässt sich mit Winsight32 (Zubehör zu Delphi…auf jeden Fall zur Prof.) herausfinden…

Hier die Möglichkeit !

unit Start;

interface

implementation

uses Windows, Dialogs, SysUtils;

var
mHandle: THandle;

Initialization
mHandle := CreateMutex(nil, true, ‚Anwendungsname‘);

if GetLastError = ERROR_ALREADY_EXISTS then
begin
ShowMessage(‚Anwendung XYZ bereits aktiv.‘);
halt;
end;

Finalization
if mHandle 0 then CloseHandle(mHandle);

end.

Gruß Markus

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]