I'm using NSIS to distribute my software. It's basically a plugin to view custom 3d content and is delivered with one content package. Since I'm distributing the contents separately each content package has it's own installer with the same software. The problem is that each time I install additional content, the uninstaller gets overwritten and so the uninstaller only knows about the last installed component. Would it be possible to write a registry entry for each content and then generate the component list of the uninstaller dynamically? I'm open for any other advices how this could be achieved. Best regards, Satara

有帮助吗?

解决方案

They easy way is probably just to give the uninstaller a unique name for each content package and if required, keep a count of installed packages under HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\SharedDlls so you know when to uninstall the engine/plugin.

The number of NSIS sections is set at compile-time and you can not add more so if the maximum number of packages is unknown you cannot just make some of the sections unchecked & hidden. The way around this is to store a list of the installed packages somewhere in the registry and create a custom page (nsDialogs) in the uninstaller where you list the installed packages...

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top