c - Windows 锁定时截取桌面屏幕截图 (Win+L)

标签 c windows winapi screenshot winlogon

我想在 Windows 锁定时(使用 Win+L)拍摄桌面屏幕截图。标准方法制作黑屏,像素代码:

COLORREF color = GetPixel(hdc, x, y);

等于-1。用户模式程序和服务都无法捕获有用的图像。有什么想法吗?

最佳答案

GetPixelBitBlt 在桌面未实际显示在显示器上时将不起作用。

使用 PrintWindow 捕获单个窗口可能会有些运气.但是,并非所有应用程序都以相同的方式响应 PrintWindow 调用,因此您可能会看到故障和/或黑屏。您还需要单独捕获每个窗口。

关于c - Windows 锁定时截取桌面屏幕截图 (Win+L),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3474805/

相关文章:

windows - 如何使用 node.js 服务器在 MS Windows 上移动鼠标光标?

c++ - 查找生成 WM_INPUT 消息的设备的位置信息

c - 传递地址,但它的工作方式就像 C 中的值调用?

c++ - 从树上摘苹果

c - 额外的 EOF 字符

c++ - EnumDesktopWindows 错误 : (183) Cannot create a file when that file already exists

c++ - 如何在 Metro 应用程序中打印到 C++ 中的 Visual Studio 11 控制台/日志?

c - 我对字符串感到困惑

windows - 如何在 Windows 上通过 bash 访问 AWS SAM-CLI?

python - GPU 处理 - cuDF 安装问题(O/S 或硬件问题?)