Sc4pterR0bl0x

gdikit

Feb 24th, 2022
1,485
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 2.84 KB | None | 0 0
  1.  enum TernaryRasterOperations : uint
  2.     {
  3.       /// <summary>dest = source</summary>
  4.       SRCCOPY = 0x00CC0020,
  5.       /// <summary>dest = source OR dest</summary>
  6.       SRCPAINT = 0x00EE0086,
  7.       /// <summary>dest = source AND dest</summary>
  8.       SRCAND = 0x008800C6,
  9.       /// <summary>dest = source XOR dest</summary>
  10.       SRCINVERT = 0x00660046,
  11.       /// <summary>dest = source AND (NOT dest)</summary>
  12.       SRCERASE = 0x00440328,
  13.       /// <summary>dest = (NOT source)</summary>
  14.       NOTSRCCOPY = 0x00330008,
  15.       /// <summary>dest = (NOT src) AND (NOT dest)</summary>
  16.       NOTSRCERASE = 0x001100A6,
  17.       /// <summary>dest = (source AND pattern)</summary>
  18.       MERGECOPY = 0x00C000CA,
  19.       /// <summary>dest = (NOT source) OR dest</summary>
  20.       MERGEPAINT = 0x00BB0226,
  21.       /// <summary>dest = pattern</summary>
  22.       PATCOPY = 0x00F00021,
  23.       /// <summary>dest = DPSnoo</summary>
  24.       PATPAINT = 0x00FB0A09,
  25.       /// <summary>dest = pattern XOR dest</summary>
  26.       PATINVERT = 0x005A0049,
  27.       /// <summary>dest = (NOT dest)</summary>
  28.       DSTINVERT = 0x00550009,
  29.       /// <summary>dest = BLACK</summary>
  30.       BLACKNESS = 0x00000042,
  31.       /// <summary>dest = WHITE</summary>
  32.       WHITENESS = 0x00FF0062,
  33.       /// <summary>
  34.       /// Capture window as seen on screen.  This includes layered windows
  35.       /// such as WPF windows with AllowsTransparency="true"
  36.       /// </summary>
  37.       CAPTUREBLT = 0x40000000
  38.     }
  39.  
  40.     [DllImport("gdi32.dll", EntryPoint = "BitBlt", SetLastError = true)]
  41.     [return: MarshalAs(UnmanagedType.Bool)]
  42.     static extern bool BitBlt([In] IntPtr hdc, int nXDest, int nYDest, int nWidth, int nHeight, [In] IntPtr hdcSrc, int nXSrc, int nYSrc, TernaryRasterOperations dwRop);
  43.  
  44.     [DllImport("gdi32.dll", EntryPoint = "CreateCompatibleDC", SetLastError = true)]
  45.     static extern IntPtr CreateCompatibleDC([In] IntPtr hdc);
  46.  
  47.     [DllImport("gdi32.dll", EntryPoint = "SelectObject")]
  48.     public static extern IntPtr SelectObject([In] IntPtr hdc, [In] IntPtr hgdiobj);
  49.  
  50.     Random ll = new Random();
  51.     [DllImport("User32.dll")]
  52.     static extern IntPtr GetDC(IntPtr hwnd);
  53.  
  54.     [DllImport("User32.dll")]
  55.     static extern int ReleaseDC(IntPtr hwnd, IntPtr dc);
  56.  
  57.     [DllImport("gdi32.dll")]
  58.     static extern bool PatBlt(IntPtr hdc, int nXLeft, int nYLeft, int nWidth, int nHeight, TernaryRasterOperations dwRop);
  59.  
  60.     [DllImport("gdi32.dll")]
  61.     static extern IntPtr CreateSolidBrush(uint crColor);
  62.  
  63.     private Bitmap CaptureScreen()
  64.     {
  65.  
  66.      
  67.  
  68.       Graphics myGraphics = this.CreateGraphics();
  69.       Size s = this.Size;
  70.       Bitmap memoryImage = new Bitmap(s.Width, s.Height, myGraphics);
  71.       Graphics memoryGraphics = Graphics.FromImage(memoryImage);
  72.       memoryGraphics.CopyFromScreen(this.Location.X, this.Location.Y, 0, 0, s);
  73.       return memoryImage;
  74.     }
Advertisement
Add Comment
Please, Sign In to add comment