画面キャプチャについて

隠されたウィンドウブロックやリアルタイムのステータスに撮影したウィンドウを作成することが必要な場合があります

一般的に使用されるビットブリット()

ソースデバイス領域画素は、ターゲット領域にコピーし、ブロックまたは無力上のウィンドウに隠されてもよい場合

これは、所望の領域を切り出すことができPrintWindow、ウィンドウが隠されているかどうかをするときに使用される、または遮断することができます

 

    IntPtr hscrdc = GetWindowDC(のhWnd);
              制御コントロール= Control.FromHandle(のhWnd)。
              IntPtr HBITMAP = CreateCompatibleBitmap(hscrdc、control.Width、control.Height)。
              IntPtr hmemdc = CreateCompatibleDC(hscrdc)。
              SelectObject(hmemdc、HBITMAP)。
              BOOL再= PrintWindow(hWndは、hmemdc、0);
              ビットマップBMP = NULL;
              IF(再)
              {
                 BMP = Bitmap.FromHbitmap(HBITMAP)。                  
              }

おすすめ

転載: www.cnblogs.com/ice-arrow/p/11981046.html