我正在尝试制作一个Java应用程序,可以从其他活动窗口程序,如信息栏,甚至其他活动窗口的屏幕截图中获取信息。
在这种情况下,JNI是唯一的选择吗?
谢谢。
发布于 2010-05-31 10:39:50
获取有关操作系统的其他项目的信息需要通过特定于操作系统的方法来完成。你也许能够从你的程序内部启动一些脚本,并通过读取这些脚本的输出来获取一些信息?
否则,JNI就是最佳选择。Java背后的整个理念是独立于平台,这是通过隐藏操作系统来实现的。
屏幕截图是可能的
import java.awt.AWTException;
import java.awt.Rectangle;
import java.awt.Robot;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;
public class RobotExp {
public static void main(String[] args) {
try {
Robot robot = new Robot();
// Capture the screen shot of the area of the screen defined by the rectangle
BufferedImage bi=robot.createScreenCapture(new Rectangle(100,100));
ImageIO.write(bi, "jpg", new File("C:/imageTest.jpg"));
} catch (AWTException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}https://stackoverflow.com/questions/2937844
复制相似问题