5

私はMFCで作業しており、デスクトップのbmpをキャプチャしようとしています。これを行うためにGetDC(NULL)を使用していますが、特別なスキンウィンドウを無視しているようです。UpdateLayeredWindowで描画されたウィンドウを無視しているようです。この動作は、Vistax64およびXPでのみ発生しているようです。デスクトップHWNDでGetWindowDCも試しましたが、結果は同じです。

注:1)PrintScreenは機能します。2)Vistaでは、Aeroを有効にすると、画面キャプチャに問題がなく、「特別な」ウィンドウが表示されます。したがって、Vistaでは、Aeroが無効になっている場合にのみ発生します。

アイデア?

ありがとうございました。

4

2 に答える 2

7

BitBlt() を呼び出すときに、レイヤード ウィンドウを「キャプチャ」するために CAPTUREBLT フラグを追加します。

于 2009-07-28T13:59:35.747 に答える