我正在尝试使用Windows API来拍摄窗口的屏幕截图。这是我目前的代码:
//Grab the window
HWND window = me;//GetForegroundWindow();
HDC context = GetDC(window);
RECT windowRect;
GetWindowRect(window, &windowRect);
int w = windowRect.right-windowRect.left;
int h = windowRect.bottom-windowRect.top;
//Copy the data
for (int y=0;y<h;y++)
for (int x=0;x<w;x++)
{
COLORREF color = GetPixel(context, x,y);
std::cout<<color<<std::endl;
}
宽度和高度正确返回(以及窗口位置),但颜色始终为0xFFFFFF(白色)。
似乎它应该相当容易,因为在窗口截取窗口的屏幕截图只是alt
+ shift
+ Print Screen