public static void TakeGlobalSemaphore()
 {
     TakeSemaphore();
     foreach (var p in AppHelper.GetAllProcessesButThis())
     {
         WinAPIHelper.SendStringMessage(p.MainWindowHandle, "TakeSemaphore");
     }
 }
 public static void ReleaseGlobalSemaphore()
 {
     foreach (var p in AppHelper.GetAllProcessesButThis())
     {
         WinAPIHelper.SendStringMessage(p.MainWindowHandle, "ReleaseSemaphore");
     }
     _sem.Close();
 }
        public static void UpdateGlobalSettings()
        {
            foreach (var p in AppHelper.GetAllProcessesButThis())
            {
                WinAPIHelper.SendStringMessage(p.MainWindowHandle, "UpdateSettings");
            }

            if (_sem.Count != Setting.CopyCount)
            {
                ReleaseGlobalSemaphore();
                TakeGlobalSemaphore();
            }
        }