在 windows 启动时执行 Jar 不起作用,没有结果

Jar execution on startup at windows doesn't work, no result

我使用在 Boann 的回答中找到的 class 添加了一个用于执行 jar 的密钥: read/write to Windows Registry using Java 。我在一个虚拟化的虚拟盒子里工作 windows 7.

如果我在 "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\" 中添加一个 notepad.exe 值,它会在启动时启动。

我在这个键中写了值,键名JAVALL

javaw -Xmx200m -jar 

整个代码为:

if (Utilities.WindowsRegistry.isAvailable()) {+
            Utilities.WindowsRegistry.writeValue(
                    "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\", 
                    "JAVALL", 
                    "\"java.exe -jar "+ super.installPathFile + "\" ");
        }

其中 super.installPathFile 与 c:\users\kk\desktop\program.jar

相似

但是当我尝试在桌面的 jar 中执行相同操作时,它无法启动。我不知道错误在哪里!

还有一个奇怪的问题,当我转到注册表编辑器中的路径时,键名和值与使用 readValues() 函数得到的键名和值不同。 例如,我在密钥中添加了记事本,它可以正确启动,我也可以在 readValues() 函数中看到它。但是当我进入 regedit 时,我看不到与函数中相同的键!我在虚拟化环境中工作 windows 7

将评论转换为答案:

包括 完整路径 到 java 虚拟机 es.

"c:\program files(x86)\java\jre1.8.31\bin\java.exe" -jar c:\users\kk\desktop\program.jar