internal static void Main() { try { InitializeLocale(); Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); ExceptionLogger.ClearLogs(); InjectorStorage.Initialize(new InjectorConfiguration()); using (var volumeMonitor = InjectorStorage.Current.Create <IVolumeMonitor>()) { if (Settings.Default.Enabled) { volumeMonitor.Start(); } volumeMonitor.MaxVolume = Settings.Default.MaxVolume; volumeMonitor.MaxLoudness = Settings.Default.MaxLoudness; using (var presenter = InjectorStorage.Current.Create <INotifyIconPresenter>()) { Application.Run(); } } } catch (Exception ex) { ExceptionLogger.LogException(ex); ShowErrorMessage(); } finally { InjectorStorage.Clear(); } }