0

我正在解决一个问题,我试图将窗口的屏幕截图(包括标题栏和边框)保存到 PNG 文件中。对于 Google Chrome 和 Visual Studio 等某些应用程序,我无法获得使用 Alt + PrintScreen 获得的完整窗口图像。

问题是:

  1. 对于谷歌浏览器,我没有得到最小化、最大化和关闭按钮
  2. 对于 Visual Studio,我只得到某些部分并且缺少解决方案资源管理器和输出窗口。

我已经确定我使用的句柄是根窗口的句柄

下面是我用来获取位图的代码:

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