Wenn ich den folgenden Code ausführe :
Process myProcess = new System.Diagnostics.Process();
myProcess.StartInfo.FileName = "notepad.exe";
myProcess.EnableRaisingEvents = true;
myProcess.Exited += new System.EventHandler(Process_OnExit);
myProcess.Start();
public static void Process_OnExit(object sender, EventArgs e)
{
// Delete the file on exit
}
Das Ereignis wird ausgelöst, wenn ich Notepad beende. Wenn ich den gleichen Code versuche, aber ich starte ein Bild statt :
Process myProcess = new System.Diagnostics.Process();
myProcess.StartInfo.FileName = @"C:\Users\Public\Pictures\Sample Pictures\Desert.jpg";
myProcess.EnableRaisingEvents = true;
myProcess.Exited += new System.EventHandler(Process_OnExit);
myProcess.Start();
public static void Process_OnExit(object sender, EventArgs e)
{
// Delete the file on exit
}
Das Ereignis wird nie ausgelöst. Liegt es daran, dass der Prozess, der das Bild lädt, nie geschlossen wird?
UPDATE : Der Prozess, mit dem man beginnt, ist nicht immer ein Bild. Es kann alles sein (PDF, Word-Dokument usw.). Vielleicht ist mein Ansatz nicht der richtige. Gibt es eine andere Möglichkeit, die Datei zu löschen, nachdem der Benutzer den Prozess beendet hat?
Gracias