0

私は問題に取り組んでいます。ウィンドウのスクリーンショット(タイトルバーと境界線を含む)をPNGファイルに保存しようとしています。GoogleChromeやVisualStudioなどの特定のアプリケーションでは、Alt+PrintScreenで取得したウィンドウ全体の画像を取得できません。

問題は次のとおりです。

  1. Google Chromeの場合、[最小化]、[最大化]、[閉じる]ボタンが表示されません
  2. Visual Studioの場合、特定のパーツのみが表示され、ソリューションエクスプローラーと出力ウィンドウが表示されません。

使用するハンドルがルートウィンドウのハンドルであることを確認しました

以下は、BitMapを取得するために使用するコードです。

hdc = GetDCEx(hwnd, 0, DCX_WINDOW);
hDest = CreateCompatibleDC (hdc);

GetWindowRect (hwnd, &rt);
hBitmap = CreateCompatibleBitmap (hdc, rt.right - rt.left, rt.bottom - rt.top);
SelectObject(hDest, hBitmap);
BitBlt( hDest, 0, 0, rt.right - rt.left, rt.bottom - rt.top, hdc, 0, 0, SRCCOPY);

ありがとう、ラージャ

4

0 に答える 0