Du erzeugst den globalen Mutex im Updater und fragst im Hauptprogramm periodisch ab, ob du diesen erstellen kannst. Wenn nicht, läuft der Updater und das Hauptprogramm beendet sich. Code kann ich mal noch raussuchen
Bspw. hier: https://www.purebasic.fr/english/viewto ... eatemutex_
KillProcess(
Re: KillProcess(
Win11 x64 | PB 6.20
Re: KillProcess(
Supi, danke, werde es mir mal anschauen. Meine bisherige RunProgram( Batch-Datei) im unsichtbaren Modus läuft jedoch super. Bin am überlegen, ob ich das tausche, aber für künftige Projekte ist das Mutex nicht übel.
PB 6.10LTs / Windows 11 64Bit (i9/32GB/ 1TB-SSD+4TB-HDD/3060GTX12GB) / 2x27" Multitouch
... ich mache dazu keine Aussage, weil ich mich damit selbst belasten könnte !
... ich mache dazu keine Aussage, weil ich mich damit selbst belasten könnte !
Re: KillProcess(
Man könnte auch das Windows Nachrichten System verwenden.
Hier mal Fragmente für eine globale Nachricht, ich habe es aber nicht selbst ausprobiert.
Alternativ wäre auch eine Kommunikation über #WM_COPYDATA möglich .....
Hier mal Fragmente für eine globale Nachricht, ich habe es aber nicht selbst ausprobiert.
Code: Alles auswählen
#MainApplicationName$ = "MyApp"
#SafetyFirst_wParam = $1234 ;
#SafetyFirst_lParam = $12345678
Global CloseAppMessageID
; register in both apps with same #MainApplicationName$
;
CloseAppMessageID = RegisterWindowMessage_(#MainApplicationName$ + "_CloseApp")
; ....
; main loop
If Event = CloseAppMessageID And EventwParam() = #SafetyFirst_wParam And EventlParam() = #SafetyFirst_lParam
AppQuit = #True ;
Break ; leave the main loop now (just like #PB_Event_CloseWindow)
EndIf
; ...
SendMessage_(#HWND_BROADCAST, CloseAppMessageID, #SafetyFirst_wParam, #SafetyFirst_lParam)
Alternativ wäre auch eine Kommunikation über #WM_COPYDATA möglich .....
Using PureBasic latest stable version and current alpha/beta (x64) on Windows 11 Home