import java.awt.AWTException;
import java.awt.Robot;
import java.awt.event.KeyEvent;
import java.io.File;
import java.io.IOException;
public class ExecuteExe {
public static void main(String[] args) {
try {
// 创建 Robot 对象
Robot robot = new Robot();
// 打开程序,替换为实际的路径
Runtime.getRuntime().exec("cmd /c start D:\\测试exe\\XX.exe");
Thread.sleep(5000); // 等待程序打开
// 输入用户名
String username = "XXX"; // 替换为实际的用户名
type(robot, username);
// 切换到密码输入框
robot.keyPress(KeyEvent.VK_TAB);
robot.keyRelease(KeyEvent.VK_TAB);
// 输入密码
String password = "XXX"; // 替换为实际的密码
type(robot, password);
// 点击确定按钮
robot.keyPress(KeyEvent.VK_ENTER);
robot.keyRelease(KeyEvent.VK_ENTER);
} catch (AWTException | InterruptedException | IOException e) {
e.printStackTrace();
}
}
// 辅助方法:模拟键盘输入
private static void type(Robot robot, String text) {
for (char c : text.toCharArray()) {
int keyCode = KeyEvent.getExtendedKeyCodeForChar(c);
if (KeyEvent.CHAR_UNDEFINED == keyCode) {
throw new RuntimeException("KeyCode not found for character '" + c + "'");
}
robot.keyPress(keyCode);
robot.keyRelease(keyCode);
}
}
}
java调用本地exe并实现自动登录
于 2024-05-10 11:59:37 首次发布