The*_*ted 5 izpack uninstallation
我正在使用 izPack 4.3.4 为 Java 项目开发图形安装程序,安装进行得很顺利,但是当我尝试通过单击“程序和功能”窗口中的参考来卸载它时,它会显示以下消息:
Error: Unable to access jarfile C:\Program Files (x86)\myproject\uninstaller\uninstaller.jar
Run Code Online (Sandbox Code Playgroud)
事实是,我选择将卸载程序放在程序的根安装路径中并重命名,而不是在 \uninstaller 目录中。请参阅 XML:
<info>
...
<uninstaller name="uninstall.jar" write="yes" path="${INSTALL_PATH}" />
...
</info>
Run Code Online (Sandbox Code Playgroud)
而且,事实上,uninstall.jar 文件是在 C:\Program Files (x86)\myproject\ 中创建的,如果我双击它或通过“开始”菜单,它就可以工作。我认为 izpacks 在 Windows 的注册表中写入了错误的数据以在“程序和功能”中引用它......但我不知道为什么......
如果您在 Windows 上使用 IZPack 进行安装,您可以(应该)拥有一个RegistrySpec.xml。那家伙写了你需要的所有注册表项。Windows 会查找注册表值“UninstallString”作为要运行的文件来启动卸载,并且您可能需要覆盖该文件。以我的为例:
<pack name="UninstallStuff">
<!-- Special "pack", if not defined an uninstall key will be generated automatically -->
<value name="UninstallString"
keypath="SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\$APP_NAME"
root="HKLM"
string="$INSTALL_PATH\uninstall\uninstaller.cmd"/>
<pack name="UninstallStuff">
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2006 次 |
| 最近记录: |