C# 截取窗口图像(包括遮挡窗口,最小化窗口)
[DllImport("user32.dll")] public static extern bool PrintWindow( IntPtr hwnd, // Window to copy,Handle to the window that will be copied. IntPtr hdcBlt, // HDC to print into,Handle to the device context. UInt32 nFlags // Optional flags,Specifies the drawing options. It can be one of the following values. ); //传入窗口句柄,获取该窗口的图像信息 private Image GetWindowImage(IntPtr windownHandle) { Control control =Control.FromHandle(windownHandle); Bitmap image = new Bitmap(control.Width, control.Height); Graphics gp = Graphics.FromImage(image); IntPtr dc = gp.GetHdc(); PrintWindow(windownHandle, dc, 0); gp.ReleaseHdc(); gp.Dispose(); return image; }