我有一个用以下内容创建的应用程序:
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new ApplicationMenuContext());
其中ApplicationMenuContext是继承ApplicationContext的类。
public class ApplicationMenuContext : ApplicationContext
{
}
当用户关闭应用程序时,会发生以下情况:
ExitThread();
反过来称之为覆盖:
protected override void ExitThreadCore()
{
base.ExitThreadCore();
}
其中也称为处置:
protected override void Dispose( bool disposing )
{
if( disposing && components != null) { components.Dispose(); }
}
关闭应用程序效果很好。用户点击exitContextMenu,app正常关闭。但是,当Windows Installer尝试关闭应用程序时,这些功能都不会被击中!所以很明显我没有抓到什么,但我完全不知所措。我应该从RestartManager捕获什么才能正确调用ExitThread?