Как, зная Handle окна программы, определить имя EXE - C#
Формулировка задачи:
Добрый вечер, вот такая проблема: нужно найти имя активного окна. Handle узнаётся с помощью GetForegroundWindow(), а как действовать дальше, я не знаю (сравнивать этот Handle с всеми работающими приложениями было бы слишком не рационально =)
Решение задачи: «Как, зная Handle окна программы, определить имя EXE»
textual
Листинг программы
- using System.Runtime.InteropServices;
- [DllImport("user32.dll")]
- private static extern int GetWindowThreadProcessId(IntPtr hWnd, out int processId);
- public string ProcName(IntPtr WindowHandle)
- {
- int pid;
- string result = "";
- GetWindowThreadProcessId(WindowHandle, out pid);
- result = System.Diagnostics.Process.GetProcessById(pid).ProcessName + ".exe";
- return result;
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д