public Application(Installer installer) { this._installer = installer; this.DispatcherUnhandledException += (sender, e) => { e.Handled = true; installer.Log(LogLevel.Verbose, e.Exception.Message); installer.Quit(e.Exception.HResult); }; }
protected override void Run() { this.Engine.Log(LogLevel.Verbose, $"Bundle.Name: {this.BAManifest.Bundle.Name}"); this.Engine.Log(LogLevel.Verbose, $"CurrentUICulture: {CultureInfo.CurrentUICulture}"); Resources.Culture = CultureInfo.CurrentUICulture; AppDomain.CurrentDomain.UnhandledException += (sender, e) => this.Engine.Log(LogLevel.Verbose, e.ExceptionObject?.ToString()); TaskLog.Occured += (sender, log) => this.Engine.Log(LogLevel.Error, $"Unhandled Exception: {log.Exception.Message}"); this._installer = new Installer(this); var application = new Application(this._installer); var exitCode = application.Run(); this.Engine.Quit(exitCode); }