2011-07-13 49 views
2

当应用程序被从任务管理器收盘,比Form_Closed事件不点火,有没有办法如何处理这个问题,因为我的应用程序编写上运行一个文本文件 - 时间总是,所以我需要敲定,其保存线程的数据和Form_Closed关闭StreamWriter,所以如何处理,不管如何我的应用程序被关闭,从用户,ALT + F4或任务管理器形成闭合事件不被解雇

+0

可能需要将POWER CUT添加到列表中:) – Bolu

+0

什么是POWER CUT? @Bolu – Burimi

+2

杀死一个进程,实际上确实会杀死进程。没有事件会触发,不会终止块运行。 – leppie

回答

0

实施IDisposable界面,并从StreamWriter上致电Dispose()

+0

来自哪里? – V4Vendetta

+0

调用Form_Closed事件? – Burimi

0

为了得到这种情况,你需要处理Application.Exit事件。

恰好在应用程序关闭之前发生,并且无法取消。

在这里,您可以确保所有数据都写入文件,并且正确关闭 - 如果它当前尚未关闭。

+0

这也不会工作,尝试应用这个并关闭应用程序从任务管理器它不会引发此事件 – Burimi

+0

@Cody - 哦,我认为它的确如此。您是从“进程”选项卡中终止进程还是从“应用程序”选项卡结束任务? – ChrisF

+0

是的,即时消息从进程选项卡,并从外部应用程序使用Process.kill()测试它; – Burimi