/// <summary> /// Run LuaDevelop and catch any unhandled exceptions. /// </summary> static void RunLuaDevelopWithErrorHandling(String[] arguments, Boolean isFirst) { Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); MainForm.IsFirst = isFirst; MainForm.Arguments = arguments; MainForm mainForm = new MainForm(); SingleInstanceApp.NewInstanceMessage += delegate(Object sender, Object message) { MainForm.Arguments = message as String[]; mainForm.ProcessParameters(message as String[]); }; //try { SingleInstanceApp.Initialize(); Application.Run(mainForm); } //catch (Exception ex) //{ // MessageBox.Show("There was an unexpected problem while running LuaDevelop: " + ex.Message, "Error"); //} //finally { SingleInstanceApp.Close(); } }
static void Main(String[] arguments) { if (Win32.ShouldUseWin32()) { if (SingleInstanceApp.AlreadyExists) { Boolean reUse = Array.IndexOf(arguments, "-reuse") > -1; if (!MultiInstanceMode || reUse) { SingleInstanceApp.NotifyExistingInstance(arguments); } else { RunFlashDevelopWithErrorHandling(arguments, false); } } else { RunFlashDevelopWithErrorHandling(arguments, true); } } else // For other platforms { Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); MainForm.IsFirst = true; MainForm.Arguments = arguments; MainForm mainForm = new MainForm(); Application.Run(mainForm); } }
private void Application_OnExit(object sender, ExitEventArgs e) { // TODO: stop timer and wait for pending tasks, or a TaskCanceledException might happen. _configManager?.SaveAll(); SingleInstanceApp.Cleanup(); }
public static void Start(Form f, StartupNextInstanceEventHandler handler) { if (app == null && f != null) { app = new SingleInstanceApp(f); } app.StartupNextInstance += handler; app.Run(Environment.GetCommandLineArgs()); }
private void CheckSingleInstance() { singleInstance = new SingleInstanceApp(); if (!singleInstance.CheckInstance()) { MessageBox.Show("ESL Tracker is alrady running", "Error", MessageBoxButton.OK, MessageBoxImage.Error); App.Current.Shutdown(); } }
static void Main(String[] arguments) { if (SingleInstanceApp.AlreadyExists) { if (!MultiInstanceMode) { SingleInstanceApp.NotifyExistingInstance(arguments); } else { RunFlashDevelopWithErrorHandling(arguments, false); } } else { RunFlashDevelopWithErrorHandling(arguments, true); } }
static void Main(String[] arguments) { if (SingleInstanceApp.AlreadyExists) { Boolean reUse = Array.IndexOf(arguments, "-reuse") > -1; if (!MultiInstanceMode || reUse) { SingleInstanceApp.NotifyExistingInstance(arguments); } else { RunFlashDevelopWithErrorHandling(arguments, false); } } else { RunFlashDevelopWithErrorHandling(arguments, true); } }
private void Application_Startup(object sender, StartupEventArgs e) { GlobalExceptionHandler.Setup(this); if (!SingleInstanceApp.IsSingleInstance("Kingfisher-DevOps-Monitor")) { Shutdown(); return; } SingleInstanceApp.SecondInstanceStarted += SingleContextSecondInstanceStarted; _configManager = ServiceLocator.Instance.Resolve <IConfigManager>(); var model = ServiceLocator.Instance.Resolve <BuildsOverviewViewModel>(); var mainWindow = ServiceLocator.Instance.Resolve <MainWindow>(); model.RestartTimer(); ShowMainWindow(mainWindow, e.Args.Contains("-hidden")); }
public static void Main() { var si = new SingleInstanceApp(AppName); si.ReceiveString += Si_ReceiveString; if (si.IsFirstInstance) { var application = new App(); CdData = new Dictionary <string, string>(); DiscID = ""; RecentUrls = new HashSet <string>(); FillUrlList(); application.InitializeComponent(); application.ShutdownMode = ShutdownMode.OnMainWindowClose; application.Run(); si.Close(); } else { si.SubmitParameters(); } }
public static void Main() { var si = new SingleInstanceApp(AppName); si.ReceiveString += Si_ReceiveString; if (si.IsFirstInstance) { var hasher = new EngineHashChecker(); if (!hasher.CheckHashes()) { MessageBox.Show(TCPlayer.Properties.Resources.Error_CorruptDll, TCPlayer.Properties.Resources.Error_Title, MessageBoxButton.OK, MessageBoxImage.Error); return; } SetAppCulture(); var application = new App(); CdData = new Dictionary <string, string>(); DiscID = ""; RecentUrls = new HashSet <string>(); FillUrlList(); application.InitializeComponent(); _prevactive = true; _active = true; application.ShutdownMode = ShutdownMode.OnMainWindowClose; application.MainWindow = new MainWindow(); application.MainWindow.Activated += MainWindow_Activated; application.MainWindow.Deactivated += MainWindow_Deactivated; application.Run(application.MainWindow); si.Close(); } else { si.SubmitParameters(); } }