有没有办法在发生崩溃时自动删除NotifyIcon? (我知道你可以用鼠标移除它)
我正在运行windows xp。
答案 0 :(得分:5)
对于C#,尝试从AppDomain处理UnhandledException事件,因此,在Main()
方法中添加:
AppDomain.CurrentDomain.UnhandledException +=
new UnhandledExceptionEventHandler(CurrentDomain_UnhandledException);
然后添加以下方法:
static void CurrentDomain_UnhandledException(object sender,
UnhandledExceptionEventArgs e)
{
// .... Remove Notification icon here
}
答案 1 :(得分:4)
不幸的是答案是否定的--Rob的答案实际上检测到崩溃,并试图删除崩溃处理程序中的图标,该图标有自己的一组问题(例如,它假设崩溃时CLR正在运行)执行未处理的异常,情况并非总是如此。
这里的问题是shell(运行Shell_NotifyIcon代码)与您的应用程序不同步。