您好我有自定义bootstrapper应用程序。一切正常,但工作完成后我关闭应用程序进程继续挂起。当我尝试重新编译安装程序时,我注意到了。我有这样的代码:
protected override void Run()
{
//MessageBox.Show("Run");
// set the global message dispatcher
Dispatcher = Dispatcher.CurrentDispatcher;
// Create the model, view model and the view of the main window.
// The view model handles the enitre ui.
Model model = new Model(this);
MainWindowViewModel viewModel = new MainWindowViewModel(model);
MainWindow mainWindow = new MainWindow(viewModel);
Engine.Detect();
// Create a Window to show UI.
Engine.Log(Microsoft.Tools.WindowsInstallerXml.Bootstrapper.LogLevel.Verbose, "Creating UI");
Engine.CloseSplashScreen();
mainWindow.Show();
// run the threading dispatcher
Dispatcher.Run();
// Finalize the installation (with the finalResult) and quit the process.
Engine.Quit(model.FinalResult);
}
我调试了它,当然它每次调用函数Engine.Quit(0)。有时它工作正常,但有时这个过程不会停止。日志中没有“关闭,退出代码:”行。我不知道为什么。有没有人知道我做错了什么
我注意到只有在修改两个或更多包时才会发生这种情况。