/// <summary> /// Raises the <see cref="E:System.Windows.Application.Exit" /> event. /// </summary> /// <param name="e">An <see cref="T:System.Windows.ExitEventArgs" /> that contains the event data.</param> protected override void OnExit(ExitEventArgs e) { ReleaseMutex(); base.OnExit(e); CompositionRoot.Dispose(); }
void OnDestroy() { foreach (var space in _spaces) { space.Dispose(); } _compositionRoot.Dispose(); }
/// <summary> /// Restarts this instance. /// </summary> /// <exception cref="System.NotImplementedException"></exception> public void Restart() { Dispatcher.Invoke(ReleaseMutex); CompositionRoot.Dispose(); System.Windows.Forms.Application.Restart(); Dispatcher.Invoke(Shutdown); }
private static void Main() { try { ConfigureLog4Net(); _logger = LogManager.GetLogger(typeof(FormMain)); RegisterBotSettings(); RegisterCommands(); CompositionRoot.RegisterDependencies(); Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); Application.Run(CompositionRoot.Resolve <FormMain>()); } catch (Exception e) { _logger.Error("Error in Application", e); MessageBox.Show(e.Message, @"Error in Application", MessageBoxButtons.OK, MessageBoxIcon.Error); } finally { CompositionRoot.Dispose(); } }
public void TearDown() { _compositionRoot.Dispose(); }