Monitor.CaptureWindow Method

Captures the window.
public static Image CaptureWindow( 
IntPtr handle 
)
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+

In this article

Definition