namespace System.Drawing { using System; using System.Runtime.InteropServices; public static class ScreenCapture { public static Bitmap DesktopCapture() { Bitmap bitmap; IntPtr desktopWindow = GetDesktopWindow(); IntPtr dC = GetDC(desktopWindow); try { bitmap = Image.FromHbitmap(GetCurrentObject(dC, 7)); } finally { ReleaseDC(desktopWindow, dC); } return bitmap; } [DllImport("gdi32.dll")] private static extern IntPtr GetCurrentObject(IntPtr hdc, ushort objectType); [DllImport("user32.dll")] private static extern IntPtr GetDC(IntPtr hwnd); [DllImport("User32")] private static extern IntPtr GetDesktopWindow(); [DllImport("user32.dll")] private static extern void ReleaseDC(IntPtr hwnd, IntPtr hdc); } }
var
This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)