1
我正在寫一個程序,能夠拋出錯誤,因爲使用LuaInterface並在可編輯腳本中加載,這會導致出現錯誤,因爲錯誤沒有「Application.Exit」或「Form.FormClosing」事件似乎被稱爲。因此,我不能保證我在應用程序中運行的進程關閉。強制進程關閉出錯
當主進程通過錯誤結束時,是否有任何方法關閉啓動的進程?
我正在寫一個程序,能夠拋出錯誤,因爲使用LuaInterface並在可編輯腳本中加載,這會導致出現錯誤,因爲錯誤沒有「Application.Exit」或「Form.FormClosing」事件似乎被稱爲。因此,我不能保證我在應用程序中運行的進程關閉。強制進程關閉出錯
當主進程通過錯誤結束時,是否有任何方法關閉啓動的進程?
除非進程從任務管理器殺死它,或者使用Environment.FailFast強行結束,如,你應該能夠做這樣的事情在你的主要方法:
public static void Main(string[] args) {
try {
DoNormalStartupStuff();
}
finally {
foreach (var process in _runningProcesses) {
process.Kill();
}
}
}
另一種選擇是通過將進程ID從父進程傳遞給子進程或doing something like this來使子進程知道其父進程ID。然後,子進程可以監視父進程,如果它終止,子進程可以自殺。
這是一個WinForms,控制檯或WPF應用程序? – 2010-08-25 02:16:51