我正在开发一个需要在显示器上活动的网络应用程序,有时几个小时没有人触摸计算机。
问题是有些计算机有屏幕保护程序,或者更糟糕 - 睡眠模式是无效的。
我正试图想办法绕过它。我搜索了java applets或者只是那个闪存文件。不幸的是,我一无所获。
对于这个过于笼统的问题我很抱歉,但我对这个问题很无奈
答案 0 :(得分:1)
我为你编写了Java applet。它将鼠标光标每隔59秒向右移动一个像素,有效防止屏幕保护程序被踢入。
请注意,because of security restrictions此applet需要be signed和granted the createRobot
permission才能在客户端上运行,否则无法初始化Robot
类。但是这个问题超出了这个问题的范围。
import java.applet.Applet;
import java.awt.*;
import java.util.Timer;
import java.util.TimerTask;
/**
* Moves the mouse cursor once in a minute to prevent the screen saver from
* kicking in.
*/
public class ScreenSaverDisablerApplet extends Applet {
private static final int PERIOD = 59;
private Timer screenSaverDisabler;
@Override
public void start() {
screenSaverDisabler = new Timer();
screenSaverDisabler.scheduleAtFixedRate(new TimerTask() {
Robot r = null;
{
try {
r = new Robot();
} catch (AWTException headlessEnvironmentException) {
screenSaverDisabler.cancel();
}
}
@Override
public void run() {
Point loc = MouseInfo.getPointerInfo().getLocation();
r.mouseMove(loc.x + 1, loc.y);
r.mouseMove(loc.x, loc.y);
}
}, 0, PERIOD*1000);
}
@Override
public void stop() {
screenSaverDisabler.cancel();
}
}