Einzelnen Beitrag anzeigen

Benutzerbild von writeln
writeln

Registriert seit: 30. Aug 2004
Ort: Hamburg
28 Beiträge
 
#5

Re: prüfen, ob ein "Job" noch läuft

  Alt 17. Dez 2009, 15:19
Ok, die Mutex Lösung hat jetzt ca. 5 Mnuten in Anspruch genommen

Delphi-Quellcode:
  public
    { Public-Deklarationen }
    // Formular Steuerung
    hMutex: THandle;
    CurrJobName: string;
    ...

procedure TFormCWSSrv.FormCreate(Sender: TObject);
begin
  // Formular vorbereiten und CurrJobName ermitteln
  ...

  // Mutex Prüfung
  hMutex := CreateMutex(NIL, True, PChar(CurrJobName));
   if (hMutex = 0) OR (GetLastError = ERROR_ALREADY_EXISTS) then
   begin
     CloseHandle(hMutex);
     halt;
  end
  else
    // Job zeitverzögert starten
    TimerJobStart.Enabled:= true;
end;
Die Lösung tut genau, was sie soll...
Windows Messages als Alternative werde ich mir aber trotzdem mal genau ansehen.

Nochmal Danke!
Sascha
...und ich sach noch: "drück nich auf F9"...
  Mit Zitat antworten Zitat