protected override void Run() { Dispatcher = Dispatcher.CurrentDispatcher; var model = new BootstrapperApplicationModel(this); var viewModel = new MainWindowModel(model); var view = new MainWindow(viewModel); model.SetWindowHandle(view); Engine.Detect(); if (NotUninstallingDuringUpgrade(model)) { view.Show(); } Dispatcher.Run(); Engine.Quit(model.FinalResult); }