Java 将程序添加到启动
Java add program to startup
我已使用 jna 库写入 windows 注册表以将我的程序添加到启动项。当我在注册表中看到时,它添加得很好。我使用代码
Advapi32Util.registrySetStringValue(WinReg.HKEY_LOCAL_MACHINE,
"SOFTWARE\Microsoft\Windows\CurrentVersion\Run", FILE_NAME, FILENAME_FILEPATH);
注册表中的保存数据是这样的
key - program.jar
value - PATH/program.jar
如果我双击 program.jar
文件,它可以正常执行,但为什么它在启动时不执行?
谢谢
尝试编写一个 .bat
文件来执行您的程序 (java -jar
) 并在注册表中设置 .bat
文件路径。
当您双击 Windows 中的 Jar 文件时,Windows 启动 Java 并将该 Jar 文件作为参数传递给它,就像您双击 一样。 docx 文件 - Windows 启动 Word 并将该文件作为参数传递给它。
使用该注册表命令,您必须执行相同的操作 - 启动 Java 并将 jar 文件作为参数传递给它。尝试在您的注册表中使用此命令(您可以先在命令行上尝试):
java -jar path/to/jarfile.jar
也许您会看到带有 java
的控制台,如果是这样,您可以改用 javaw
。
我已使用 jna 库写入 windows 注册表以将我的程序添加到启动项。当我在注册表中看到时,它添加得很好。我使用代码
Advapi32Util.registrySetStringValue(WinReg.HKEY_LOCAL_MACHINE,
"SOFTWARE\Microsoft\Windows\CurrentVersion\Run", FILE_NAME, FILENAME_FILEPATH);
注册表中的保存数据是这样的
key - program.jar
value - PATH/program.jar
如果我双击 program.jar
文件,它可以正常执行,但为什么它在启动时不执行?
谢谢
尝试编写一个 .bat
文件来执行您的程序 (java -jar
) 并在注册表中设置 .bat
文件路径。
当您双击 Windows 中的 Jar 文件时,Windows 启动 Java 并将该 Jar 文件作为参数传递给它,就像您双击 一样。 docx 文件 - Windows 启动 Word 并将该文件作为参数传递给它。
使用该注册表命令,您必须执行相同的操作 - 启动 Java 并将 jar 文件作为参数传递给它。尝试在您的注册表中使用此命令(您可以先在命令行上尝试):
java -jar path/to/jarfile.jar
也许您会看到带有 java
的控制台,如果是这样,您可以改用 javaw
。