Zitat von
Andidreas:
an welcher stelle muss ich da dann die abfragen einbauen??? im oncreate ereigniss meiner hauptform??? oder gehts noch früher???
Du musst das Coding in eine neue
Unit speichern und diese
Unit in Dein Projekt einbinden. Dadurch wird ein uses-Eintrag in der .dpr-Datei automatisch erzeugt. Wenn Dein Programm initialisiert wird, werden die Units des Projektes nacheinander durchlaufen und zwar werden dabei die Initialization-Abschnitte aller Units (so vorhanden) ausgeführt. In Deinem Fall kommt die Ausführung also in der
Mutex-
Unit unit NichtDoppeltStarten;
vorbei und durchläuft das Coding
Delphi-Quellcode:
Initialization
mHandle := CreateMutex(nil,True,'xxxxx');
// 'xxxxx' Der Anwendungsname ist hier einzutragen
if GetLastError = ERROR_ALREADY_EXISTS then begin
// Anwendung läuft bereits
{showMessage('Anwendung läuft bereits!!!!!');}
// Wenn du deine Meldung willst, mach die Klammern weg
Halt;
end;
automatisch. Das
Halt;
sorgt dafür, das der Rest nicht mehr ausgeführt wird. Damit brauchst Du das Coding nirgendwo sonst aufzurufen (OnCreate o.ä.).
Bitte noch das 'xxxxx' anpassen in einem möglichst unique-Namen Deines Programmes.
Gruß,
Christoph