我的问题是关于从所有桌面(默认、UAC 屏幕、Winlogon、屏幕保护程序)安装 Windows Vista 或更高版本的远程服务器上捕获屏幕。如何在没有用户本地登录或通过 RDP 登录的情况下实现此目的。问题是 Vista 中的变化带来了 Windows 服务与桌面的隔离。我在这里和那里找到了一些解决该问题的信息:
- http://www.brianbondy.com/blog/id/100/
- https://serverfault.com/questions/482352/take-screenshot-from-server-screen-while-disconnected-from-rdp
- 为什么 Windows 服务中的打印屏幕返回黑色图像?
- 在服务器桌面会话上捕获屏幕
- https://msdn.microsoft.com/en-us/library/windows/desktop/hh404487(v=vs.85).aspx
但不幸的是,我没有看到任何好的解决方案。我想获得类似 Windows 远程桌面连接克隆的东西。换句话说,带有某种服务器的 Windows 机器,我可以远程连接到它并从中获取屏幕截图。
有一个名为TightVNC的软件可以满足我的需要,但它的源代码是C++,所以我很难找到如何克服 Windows 限制的主要思想。也许有人可以告诉?
提前感谢您的帮助。