Monitor.CaptureWindow Method
Captures the window.
This language is not supported or no code example is available.
Parameters
-
handle
-
IntPtr
Handle.
Return Value
Image
An Image.
public static Image CaptureWindow(IntPtr handle)
{
IntPtr hdcSrc = Import.GetWindowDC(handle);
Enums.RECT windowRect = new Enums.RECT();
Import.GetWindowRect(handle, out windowRect);
int width = windowRect.Right - windowRect.Left;
int height = windowRect.Bottom - windowRect.Top;
IntPtr hdcDest = Import.CreateCompatibleDC(hdcSrc);
IntPtr hBitmap = Import.CreateCompatibleBitmap(hdcSrc,
width,
height);
IntPtr hOld = Import.SelectObject(hdcDest,
hBitmap);
Import.BitBlt(hdcDest, 0, 0,
width,
height, hdcSrc,
0, 0,
Constants.SRCCOPY);
Import.SelectObject(hdcDest, hOld);
Import.DeleteDC(hdcDest);
Import.ReleaseDC(handle, hdcSrc);
Image img = Image.FromHbitmap(hBitmap);
Import.DeleteObject(hBitmap);
return img;
}
This language is not supported or no code example is available.
.NET Framework
Supported in: 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8
.NET Core
Supported in: 5.0+, 6.0+