我正在使用NSIS分发我的软件。它基本上是一个查看自定义3D内容的插件,并随附一个内容包。由于我分别分发内容,因此每个内容包都有自己的安装程序和相同的软件。问题是每次我安装其他内容时,卸载程序都会被覆盖,因此卸载程序只知道最后安装的组件。 是否可以为每个内容编写一个注册表项,然后动态生成卸载程序的组件列表? 我愿意接受任何其他建议如何实现这一目标。 最好的祝福, 萨塔拉
答案 0 :(得分:1)
他们简单的方法可能只是为每个内容包提供一个唯一的名称,如果需要,在HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ SharedDlls下保留已安装软件包的数量,这样您就知道何时卸载引擎/插件。
NSIS部分的数量是在编译时设置的,你不能添加更多,所以如果最大数量的包未知,你不能只是使一些部分未经检查&隐。解决这个问题的方法是在注册表中的某处存储已安装软件包的列表,并在卸载程序中创建一个自定义页面(nsDialogs),列出已安装的软件包......