Problem mit Prozess beendet

8

lässt mich sagen, dass ich einen Prozess mit der ID 1234 habe. Dieser Prozess läuft, bevor meine Anwendung ausgeführt wird.

Ich habe diesen Code:

%Vor%

Wenn ich nun die App kompiliere und laufe, erhält sie den Prozess und zeigt den Titel des Hauptfensters an. Wenn ich jedoch den Prozess 1234 schließe, wird die App.Exited nicht ausgelöst ... warum ist das? Und wie würde ich es in Brand setzen?

    
Ozzy 16.12.2010, 03:46
quelle

2 Antworten

17

Bitte beachten Sie, dass die Dokumentation angibt, dass EnableRaisingEvents muss auf true gesetzt werden, bevor dieses Ereignis ausgelöst wird.

    
Dark Falcon 16.12.2010, 03:48
quelle
3

Aus Performancegründen löst die Process-Klasse standardmäßig keine Ereignisse aus. Wenn Sie möchten, dass das Process-Objekt nach "Exited" sucht und dieses Ereignis auslöst, müssen Sie EnableRaisingEvents -Eigenschaft auf true.

  

Es sind Kosten verbunden mit   nach einem Prozess Ausschau halten. Ob   EnableRaisingEvents ist wahr, das   Beendetes Ereignis wird ausgelöst, wenn der   Der zugehörige Prozess wird beendet. Das   Verfahren, für die Sie festgelegt haben   Das Exited-Ereignis wird zu diesem Zeitpunkt ausgeführt.

     

Manchmal startet Ihre Anwendung ein   Prozess muss aber nicht sein   seiner Schließung mitgeteilt. Beispielsweise,   Ihre Anwendung kann den Editor starten   Erlaube dem Benutzer, Text auszuführen   bearbeiten, aber nicht weiter verwenden   die Anwendung Notepad. Sie können   wählen Sie nicht benachrichtigt werden, wenn die   Prozess beendet, weil es nicht ist   relevant für den weiteren Betrieb von   Ihre Bewerbung. Rahmen   EnableRaisingEvents zu falschen Speichern   Systemressourcen.

    
Josh 16.12.2010 03:49
quelle

Tags und Links