示例#1
0
 private void systemProcessHook_WindowEvent(object sender, IntPtr handle, Interop.ShellEvents shell)
 {
     if (shell == Interop.ShellEvents.HSHELL_WINDOWDESTROYED)
     {
         if (altTabList.Remove(handle))
         {
             Console.WriteLine("hwnd:{0}, title:{1} removed. altTabList cound ={2}", handle.ToString(), WowDisableWinKeyTools.GetWindowTitle(handle), altTabList.Count.ToString());
         }
     }
     if (shell == Interop.ShellEvents.HSHELL_WINDOWCREATED && OpenWindowGetter.KeepWindowHandleInAltTabList(handle))
     {
         altTabList.Insert(0, handle);
         Console.WriteLine("hwnd:{0}, title:{1} inserted. altTabList cound ={2}", handle.ToString(), WowDisableWinKeyTools.GetWindowTitle(handle), altTabList.Count.ToString());
         tabOrWindow = SwitchTo.Window;
     }
 }
示例#2
0
 /// <summary>
 ///Обновляет список видимых окон, как в списке альт таба (почти как, еще добавлет закрытые окна, окторые в вин10 почему-то остаются висеть в процессах, типа calc.exe)
 /// </summary>
 private void RefreshAltTabList()
 {
     altTabList = OpenWindowGetter.GetAltTabWindowsHandles();
 }