InstallShield LE:自定义卸载

时间:2011-12-24 08:32:30

标签: c# visual-studio uninstall installshield-le

我写了一个更改系统设置的免费实用程序。有些用户错误地认为他们可以通过卸载实用程序来撤消更改。当他们尝试卸载时,我想向他们显示一条消息,告诉他们必须使用该实用程序来撤消更改,并让他们选择继续或取消卸载。我该怎么做呢? 我在Visual Studio 2010中使用InstallShield LE。

1 个答案:

答案 0 :(得分:1)

通常的方法是使用卸载自定义操作。它可以提示用户并返回0继续或1602取消。

此自定义操作需要是一个接收安装句柄的win32 DLL。 EXE或.NET自定义操作只能返回0表示成功或任何其他值表示致命错误(无用户退出支持)。

不幸的是,InstallShield LE不支持DLL自定义操作(它需要付费版本)。因此,解决方案是使用不同的设置工具,它可以更好地控制自定义操作:http://en.wikipedia.org/wiki/List_of_installation_software

另一种解决方案是通过使用Orca进行编辑,在MSI中手动添加自定义操作。