Paradigm Shift Design

ISHITOYA Kentaro's blog.

スクリーンをキャプチャする方法

C#でスクリーンをキャプチャする方法.


スクリーンやウィンドウをキャプチャするには?[2.0のみ、C#、VB] − @IT
やっぱりAPIはラップされているようで,されていない気がする.

using System.Drawing.Imaging;
using System.Diagnostics;

private void button1_Click(object sender, EventArgs e)
{
  Rectangle rc;
  rc = Screen.PrimaryScreen.Bounds;

  Bitmap bmp = new Bitmap(
    rc.Width, rc.Height, PixelFormat.Format32bppArgb);
  using (Graphics g = Graphics.FromImage(bmp))
  {
    g.CopyFromScreen(rc.X, rc.Y, 0, 0,
      rc.Size, CopyPixelOperation.SourceCopy);
  }

  // ビットマップ画像として保存して表示
  string filePath = @"C:\screen.bmp";
  bmp.Save(filePath, ImageFormat.Bmp);
} 

上記URLより引用.

Bitmap bmp = Screen.capture(Screen.ALL);

でいいと思う.