Пример #1
0
 private bool CloseIfNotMainInstance()
 {
     if (Options.SettingInitializer == null)
     {
         return(false);
     }
     _SingleInstance = new Common.SingleInstance(Options.SettingInitializer.GetProgramSetting().NetworkName);
     if (!_SingleInstance.Start())
     {
         _SingleInstance.ShowFirstInstance();
         Options.SettingInitializer.GetProgramSetting().ShowExitDialog = false;
         this.Close();
         return(true);
     }
     return(false);
 }
Пример #2
0
        private bool CloseIfNotMainInstance()
        {
            //Process currentProcess = Process.GetCurrentProcess();
            //Process[] processList = Process.GetProcessesByName(currentProcess.ProcessName);
            //foreach (Process process in processList)
            //{
            //    if ((process.Id != currentProcess.Id) && (process.MainModule.FileName == currentProcess.MainModule.FileName))
            //    {
            //        Options.SettingInitializer.GetProgramSetting().ShowExitDialog = false;
            //        this.Close();
            //        return true;
            //    }
            //}
            //return false;

            //bool createdNew;
            //Mutex mutex = new Mutex(true, "MyAwesomeApp", out createdNew);
            //if (!createdNew)
            //{
            //    Options.SettingInitializer.GetProgramSetting().ShowExitDialog = false;
            //    this.Close();
            //    return true;
            //}
            //return false;
            if (Options.SettingInitializer == null)
            {
                return(false);
            }
            _SingleInstance = new Common.SingleInstance(Options.SettingInitializer.GetProgramSetting().NetworkName);
            if (!_SingleInstance.Start())
            {
                _SingleInstance.ShowFirstInstance();
                Options.SettingInitializer.GetProgramSetting().ShowExitDialog = false;
                this.Close();
                return(true);
            }
            return(false);
        }