KillProcess(

Anfängerfragen zum Programmieren mit PureBasic.
Andesdaf
Moderator
Beiträge: 2673
Registriert: 15.06.2008 18:22
Wohnort: Dresden

Re: KillProcess(

Beitrag von Andesdaf »

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_
Win11 x64 | PB 6.20
Benutzeravatar
Then
Beiträge: 284
Registriert: 06.09.2004 13:26
Wohnort: Siegen

Re: KillProcess(

Beitrag von Then »

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 !
Axolotl
Beiträge: 278
Registriert: 31.12.2008 16:34

Re: KillProcess(

Beitrag von Axolotl »

Man könnte auch das Windows Nachrichten System verwenden.

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
Antworten