如何解决使用 Sikuli 截取远程桌面的屏幕截图
我有以下 Java 代码用于捕获屏幕截图:
import org.sikuli.script.Screen;
import javax.imageio.ImageIO;
import java.io.File;
import java.io.IOException;
public class Screenshot{
public static void main(String[] args) throws IOException
{
Screen screen = new Screen();
ImageIO.write(screen.capture(screen).getImage(),"png",new File("D:\\myScreen.png"));
}
}
我使用以下代码编译这段代码:
javac -classpath .;sikulixapi-2.0.4.jar Screenshot.java
并运行它:
java -classpath .;sikulixapi-2.0.4.jar Screenshot
我尝试远程运行它,使用
psexec \\xx.xx.xxx.xxx -w "D:\Sikuli" java -classpath .;sikulixapi-2.0.4.jar Screenshot
结果不是远程屏幕的图片,而是黑色背景。
有什么办法可以让这个工作吗?
解决方法
要检查您是否主要可以通过这种方式拍摄远程屏幕,您可以使用 SikuliX 内部使用的内容:java.awt.Robot
试试这个:
import java.awt.*;
...
BufferedImage img = new Robot().createScreenCapture(new Rectangle(0,500,500))
...然后你的编码将图像存储在某处。
如果图像是黑色的,则说明远程系统上的显示器设置有问题。它必须是非无头的(真实屏幕)并且机器人必须可以访问解锁的屏幕。
来自 SikuliX 的 RaiMan
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。