2011-09-09 56 views
0

我有这个问题: 我建立了一个在c#.net 2.0中的应用程序在托盘栏上,一切工作正常:如果我点击关闭菜单(即我'我添加了)我叫Close();的主要形式,一切都很好。 我的问题是:如果一个人在没有关闭我的应用程序的情况下关闭了电脑,windows似乎无法关闭此程序,并且关闭例程被打破。c#windows无法关闭应用程序在关机

备注:在我的应用程序中,我使用了BackgroundWorker。

在此先感谢

+1

后你在哪里通常 – richardwiden

+0

发生不停止收码看到代码我的猜测是你的应用程序没有正确处理关机事件。你处理[退出事件](http://msdn.microsoft.com/en-us/library/system.windows.application.exit.aspx)? – AlG

回答

4

如果您的应用程序在做的东西是无法正常关闭停止窗口,你应该处理在应用程序中SystemEvents.SessionEnding事件。当系统关闭或用户注销时,会触发此事件。

在事件处理程序,采取一切必要措施,让您的应用程序可以正常终止,如停止所有的后台工作人员/线程 - 等