我正在尝试在登录后尝试将我的程序启动到Windows系统上: Starting a Java application at startup
但它不起作用。我的代码:
static final String REG_ADD_CMD = "reg add \"HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run\" /v \"{0}\" /d \"{1}\" /t REG_EXPAND_SZ";
private void exec(String[] args) throws Exception
{
if (args.length != 2)
throw new IllegalArgumentException("\n\nUsage: java SetEnv {key} {value}\n\n");
String key = args[0];
String value = args[1];
String cmdLine = MessageFormat.format(REG_ADD_CMD, new Object[] { key, value });
System.out.println("cmd line: "+cmdLine);
Runtime.getRuntime().exec(cmdLine);
}
@Override
public void autostartupInstalation() {
try {
String[] args = {"javaLL" , "javaw -Xmx200m -jar "+ super.installPathFile};
exec(args);
} catch (Exception ex) {
MainClass.getMainClass(InstallerWindows.class.getName()).log(Level.SEVERE, null, ex);
}
我使用的是Windows 7,并在cmd或admin cmd下执行。 可能是什么问题?
它不会显示任何错误代码或异常。 同时显示我的过程,当我完成程序时,启动一个名为reg.exe的进程,我不知道它是什么。对于我最终确定的程序的每个实例,都要启动其中一个过程。