私は問題に取り組んでいます。ウィンドウのスクリーンショット(タイトルバーと境界線を含む)をPNGファイルに保存しようとしています。GoogleChromeやVisualStudioなどの特定のアプリケーションでは、Alt+PrintScreenで取得したウィンドウ全体の画像を取得できません。
問題は次のとおりです。
- Google Chromeの場合、[最小化]、[最大化]、[閉じる]ボタンが表示されません
- 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);
ありがとう、ラージャ