C#系统停止托盘应用程序

时间:2010-10-07 12:15:49

标签: c# windows-xp restart

我有这个C#应用程序,从托盘中的系统启动开始,我有以下问题,仅在Windows XP上

应用程序运行时我无法重启PC。如果我使用文件>退出,它停止正常,然后我可以重新启动。但如果我尝试重启应用程序打开,它就不会这样做

我尝试在主窗口构造函数中添加它,如果正确的话,请尝试dunno:

Application.ApplicationExit += new EventHandler(this.OnApplicationExit);

和OnApplicationExit函数执行应用程序的关闭程序..但这没有帮助

任何想法?

2 个答案:

答案 0 :(得分:4)

FormClosing之类的地方,你有一个e.Cancel = true;事件处理程序吗?

如果是这样,请将其更改为首先查看关闭原因以决定是否取消:

if(e.CloseReason != WindowsShutDown)
     e.Cancel = true;

可能还有其他的CloseDeasons你也不应该取消关闭,所以可能值得一看MSDN。

答案 1 :(得分:1)

如果你的退出处理程序中某处有Cancel = true,我之前就已经看到了这种情况。