4

我正在开发一个 MSI 安装程序,其中包含一个 tool.exe 文件作为<Binary>元素。在安装过程中的某个时刻,我需要运行 tool.exe。所以我有一个自定义操作来执行它:

<CustomAction Id="RunToolExe"
                      BinaryKey="ToolExe"
                      ExeCommand=" -r 240 -name appservice"
                      Execute="immediate"
                      Return="check"
                    />

然后我安排在<InstallExecuteSequence>

问题:自定义操作运行时,安装过程中 cmd 行窗口快速闪烁。这对用户来说有点不舒服。有没有办法隐藏这个屏幕?

我不能使用 WixQuietExecCA,因为我无法在 Wix 中引用 Binary tool.exe。

4

2 回答 2

2
<CustomAction Id="SettoolEXEPATH" Property="EXEPATH" Value="&quot;[INSTALLDIR]tool.exe&quot; <additional commands> Execute="immediate"/>

<CustomAction Id="EXEPATH" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>       

您可以像上面显示的示例一样使用 WixQuietExecCA,相应地安排自定义操作。第一个动作 SettoolEXEPATH 将属性 EXEPATH 设置为 tool.exe 的路径,该属性名称用作 WixQuietExecCA 的自定义动作 ID,它充当命令行参数。

于 2012-11-27T10:56:49.697 回答
0

您是否尝试在此页面上这样做,以静默模式运行 CA

查看此链接以获取RemoveFiles

于 2012-11-23T21:21:58.147 回答