![]() |
Re: Verhindern eine Anwendung mehrfach zu starten
Eine Alternative:
Delphi-Quellcode:
initialization
hApp := CreateMutex(nil, True, 'APPNAME'); if GetLastError = ERROR_ALREADY_EXISTS then begin MessageDlg('Das Programm kann nur einmal gestart werden!', mtError, [mbOK],0); Halt; end; finalization if hApp <> 0 then CloseHandle(hApp); Edit: Hab gerade gesehen, dass Luckie einen fast identischen Code bereits verlinkt hat. |
Re: Verhindern eine Anwendung mehrfach zu starten
Also ich habe den Code von Luckie als unit eingebunden und der Funzt bei mir schon ewig ohne Probleme
|
Re: Verhindern eine Anwendung mehrfach zu starten
Ich habe jetzt die Komponente von
![]() @Subdata: so habe ich es auch schon probiert, aber alles erfolglos. Ich bekomme jedesmal eine dicke Exception wenn ich die Applikation das zweite Mal starte. @fuknersascha: Ich habe jetzt nochmals den Code von Luckie 1:1 kopiert nur den Unitnamen umbenannt und ich bekomme beim zweiten Start des Applikation eine Exception. Bei dieser Zeile:
Delphi-Quellcode:
steht der Programmtitel statisch als String.
mHandle := CreateMutex(nil,True,'meinProgrammtitel');
|
Re: Verhindern eine Anwendung mehrfach zu starten
Da muss dein Programmtitel rein also MeinProgramm.exe
|
Re: Verhindern eine Anwendung mehrfach zu starten
Mit oder ohne Extention?
|
Re: Verhindern eine Anwendung mehrfach zu starten
Nein, da kann jede beliebige, eindeutige Zeichenfolge stehen. Am besten nimmt man eine GUID dafür.
|
Re: Verhindern eine Anwendung mehrfach zu starten
Zitat:
bekommst Du die Exception auch, wenn Du die Applikation nicht aus der IDE startest? Grüße Klaus |
Re: Verhindern eine Anwendung mehrfach zu starten
Notfalls:
Bei LMD-Tools gibt es ein "OneInstance" ... Entweder Downloaden ( ![]() |
Re: Verhindern eine Anwendung mehrfach zu starten
Zitat:
[EDIT]Da guckt man vor dem absenden mal schnell etwas nach; und was passiert? Luckie sendet 2 Minuten früher :cry: |
Re: Verhindern eine Anwendung mehrfach zu starten
Zitat:
Wie Luckie bereits erwähnte, bietet sich eine GUID an. Edit: Der Hai war schneller ;-) |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:08 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz