Windows登录的黑屏

时间:2015-02-27 13:50:43

标签: java screenshot awtrobot

我们目前正在开发一个控制教室的应用程序。我们已经了解了iTalc,但它不适用于我们,因为它的开发非常困难。我们觉得用Java而不是用c ++编写更舒服,所以我们决定用Java创建自己的。

目前大多数情况都有效,但我们在WINLOGON上遇到屏幕捕获问题。

我们的应用程序使用Robot进行屏幕捕获(我们在主框架中显示多达50个远程屏幕截图)和VNC为我们提供实时远程控制。

当应用程序作为已登录用户运行时,一切正常,但如果我们将它包装在服务中以在winlogon凭据期间启动我们的应用程序,我们将获得BLACK SCREENSHOTS。

阅读之后,我们了解了自Windows Vista以来的Windows会话隔离0,但是​​自iTalc以来,我们无法在iTalc代码中找到解决方法。

主要问题是:有没有人用Robot类解决了会话隔离0?还能够告诉机器人切换我们希望他从哪个会话中截取屏幕截图。

1 个答案:

答案 0 :(得分:0)

我们做了类似的事情,但在c#中。只要您可以从java进行win32 API调用,它就可以工作。

您需要一个单独的应用程序才能真正拍摄屏幕截图,并且该模型会在模拟登录用户时启动该应用。

以下是我们的C#代码:https://stackoverflow.com/a/45095509/125406