阅读量:0
在C#中获取窗口句柄可以使用FindWindow
函数或Process.MainWindowHandle
属性。
- 使用
FindWindow
函数:
using System; using System.Runtime.InteropServices; class Program { [DllImport("user32.dll", SetLastError = true)] static extern IntPtr FindWindow(string lpClassName, string lpWindowName); static void Main() { IntPtr handle = FindWindow(null, "Window Title"); if (handle != IntPtr.Zero) { Console.WriteLine("Window handle: " + handle); } else { Console.WriteLine("Window not found."); } } }
- 使用
Process.MainWindowHandle
属性:
using System; using System.Diagnostics; class Program { static void Main() { Process[] processes = Process.GetProcessesByName("ProcessName"); foreach (Process process in processes) { IntPtr handle = process.MainWindowHandle; if (handle != IntPtr.Zero) { Console.WriteLine("Window handle: " + handle); } else { Console.WriteLine("Window not found for process: " + process.ProcessName); } } } }
请注意替换"Window Title"
和"ProcessName"
为你要查找的窗口标题和进程名称。