使用我的NSIS脚本,我正在尝试安装这样的文件关联:
设置HKLM\Software\Classes\.my_ext\shell\open\command
默认值
使用"C:\Program Files (x86)\my_app_path\my_app.jar" "%1"
或
使用javaw.exe -jar "C:\Program Files (x86)\my_app_path\my_app.jar" "%1"
或
"C:\Program Files\Java\jre\bin\javaw.exe" -jar "C:\Program Files (x86)\my_app_path\my_app.jar" "%1"
在第一种情况下,它根本不起作用。 (因为jar不是windows可执行文件吗?)
在第二种情况下,它根本不起作用。 (为什么?)
在第三种情况下,它可以工作,但是如果USER在不同的路径中安装新版本的java,它会中断(我的程序需要重新安装)。
任何解决方案?
答案 0 :(得分:1)
直接调用javaw.exe永远无法在100%的时间内正常工作。
Harry Johnston在评论中指出的真正解决方案是使用像launch4j这样的Java启动程序。由于您已经在使用NSIS,因此可以将其用作simple launcher。