【发布时间】:2018-02-09 00:38:54
【问题描述】:
我正在使用 wix 开发自定义托管引导程序应用程序。我的安装程序会安装我的应用程序的 .Netframework461(如果需要)、redist_x86 和 msipackage。
我的新要求是与上述组件一起安装一个InstallShied exe。我可以静默安装 installshield exe,但我的安装程序没有卸载 installshield。
我在 wix bundle 文件中添加的代码如下:
<PackageGroup Id ="InstallShield">
<ExePackage Id="InstallShield" DisplayName="InstallShield" InstallCommand="/s /v/qn" UninstallCommand="/x /s /v/qn" PerMachine="yes" Vital="yes" Permanent="no" SourceFile="setup.exe" Compressed="yes"/>
</PackageGroup>
另一个有趣的部分是,我可以使用命令提示符中代码中使用的相同命令静默安装和卸载相同的 InstallShield exe。
我的安装程序和命令提示符都以管理员模式运行。
在进行更多研究后,我了解到静默安装后它会删除 exe 详细信息,因此不会获取 installshield exe 进行卸载。我不知道这是正确的观察。我的日志文件中显示的错误如下所示。
我有一个解决方案,比如生成一个安装响应文件。我找到的命令如下。
Setup.exe /s /f1"[SETUPSUPPORTDIR]\Setup.iss"
但我的问题是,如何才能静默卸载上述响应文件。正确的卸载命令是什么?
【问题讨论】:
-
不同类型的 InstallShield 引导程序需要不同的命令行来静默执行。你知道它是从什么类型的项目构建的,或者有文档告诉你用什么参数调用它?
标签: wix installshield bootstrapper wix3.10