Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Zweiter Aufruf verhindern (https://www.delphipraxis.net/96699-zweiter-aufruf-verhindern.html)

Elspass 29. Jul 2007 11:31


Zweiter Aufruf verhindern
 
Moin, Moin,
wie kann ich verhindern das mein Programm ein zweites mal aufgerufen wird? :gruebel:

Gruß Jörg

Jürgen Thomas 29. Jul 2007 11:40

Re: Zweiter Aufruf verhindern
 
Hallo,

die Suche im Forum nach Mutex Programmstart liefert Dir erfolgreiche Verfahren.

Gruß Jürgen

Elspass 29. Jul 2007 11:47

Re: Zweiter Aufruf verhindern
 
Vielen Dank!
Haben ich nicht gefunden :oops:

Klaus01 29. Jul 2007 12:18

Re: Zweiter Aufruf verhindern
 
Dann schau mal bitte hier (Mutex).

Grüße Klaus

Tommy1988 29. Jul 2007 12:24

Re: Zweiter Aufruf verhindern
 
Ich mach das immer so:

Delphi-Quellcode:
var
 mHandle: THandle;
// [...]

initialization
   mHandle := CreateMutex(nil, True,
    '(Application.ExeName)'); // Wichtige zeile
     if GetLastError = ERROR_ALREADY_EXISTS then
     begin
     Halt;
  { Halt stopt in dem Fall das 2. starten des Programms.
    Man könnte auch eine MessageBox hierhinmachen oder soetwas ..}

finalization
 if mHandle <> 0 then
   CloseHandle(mHandle);
end. // Programmende

Christian Seehase 29. Jul 2007 12:28

Re: Zweiter Aufruf verhindern
 
Moin Tommy,

das sieht so aus, als würdest Du die Abfrage in einer Unit machen.
Wenn Du das zu Beginn der Projektdatei einfügst (vor Application.Initialize), kannst Du Dir auch ein HALT sparen.

Elspass 29. Jul 2007 18:27

Re: Zweiter Aufruf verhindern
 
Sorry Klaus,

ich hatte vor meiner Frage hier im Forum schon gesucht. Nach dem Tip Mutex Programmstart zu suchen wurde ich schon fündig...
Vielen Dank für die schnelle Hilfe


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:16 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz