Einzelnen Beitrag anzeigen

mjustin

Registriert seit: 14. Apr 2008
3.006 Beiträge
 
Delphi 2009 Professional
 
#2

Re: Mehrfaches ausführen von Konsolenanwendung verhindern /M

  Alt 8. Jul 2009, 16:38
Einfachste Lösung:

Delphi-Quellcode:
program ProjectMutex;

{$APPTYPE CONSOLE}

uses
  Windows;

var
  mHandle: THandle;
begin
  mHandle := CreateMutex(nil, True, '979246B5-A7CA-7E5F-A01C-8034E778B70C');
  if GetLastError = ERROR_ALREADY_EXISTS then
  begin
    Halt;
  end;

   // machwas
   ReadLn;

   if mHandle <> 0 then
     CloseHandle(mHandle);

end.
Andere Lösung: eine Unit schreiben, die man im Projekt möglichst weit oben in der uses-Liste angibt. Darin wie bisher mit initialization und finalization arbeiten.
Michael Justin
habarisoft.com
  Mit Zitat antworten Zitat