muss nochmal ein Thema von hinten aufrollen. Mein Programmpaket besteht aus nunmehr 4 Teilen (4 Exe-Dateien), die auf den mehr oder weniger gleichen Datenbestand zugreifen und diesen manipulieren. Es ist wichtig, dass keines dieser Programme mit mehreren Instanzen laufen kann.
Habe dazu aus diesem Post viewtopic.php?f=16&p=260173#p260173 den Code verwendet und ein wenig angepasst, genaugenommen habe ich statt ursprünglich
Code: Alles auswählen
g_hMutexAppRunning = CreateMutex_( #Null, #Null, "Global\MyApplication1")
Code: Alles auswählen
g_hMutexAppRunning = CreateMutex_( #Null, #Null, "Global\"+GetFilePart(ProgramFilename(),#PB_FileSystem_NoExtension))
Code: Alles auswählen
Global g_hMutexAppRunning
Procedure AppInstanceExists()
Protected bAppRunning = FALSE;
g_hMutexAppRunning = CreateMutex_( #Null, #Null, "Global\"+GetFilePart(ProgramFilename(),#PB_FileSystem_NoExtension))
If (g_hMutexAppRunning <> #Null) And (GetLastError_() = #ERROR_ALREADY_EXISTS)
CloseHandle_( g_hMutexAppRunning );
g_hMutexAppRunning = #Null;
EndIf
If g_hMutexAppRunning
ProcedureReturn #False;
Else
ProcedureReturn #True
EndIf
EndProcedure
If AppInstanceExists()
End
EndIf
CloseHandle_(g_hMutexAppRunning)
Code: Alles auswählen
RunProgramm