Активность окна сторонней программы - C#
Формулировка задачи:
Здравствуйте. Такой вопрос к знатокам)
Как определить активно ли окно у сторонней программы?
ничего внятного не нашел на просторах сети. Может поможет кто.
Решение задачи: «Активность окна сторонней программы»
textual
Листинг программы
- class Program
- {
- [DllImportAttribute("User32.dll")]
- private static extern int FindWindow(string ClassName, string WindowName);
- [DllImportAttribute("User32.dll")]
- private static extern int GetForegroundWindow();
- static void Main(string[] args)
- {
- int hWnd = FindWindow(null, "Calculator");
- Console.WriteLine("HWND: " + hWnd);
- int lastActiveHwnd = GetForegroundWindow();
- while (true)
- {
- int newActiveHwnd = GetForegroundWindow();
- if (newActiveHwnd != lastActiveHwnd)
- {
- if (newActiveHwnd == hWnd)
- Console.WriteLine("window activated");
- else if (lastActiveHwnd == hWnd)
- Console.WriteLine("window deactivated");
- lastActiveHwnd = newActiveHwnd;
- }
- if (Console.KeyAvailable)
- break;
- Thread.Sleep(500);
- }
- }
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д