好的我相信我遵循Wix3.5中的在线示例来执行安静的命令,但我似乎无法让我的命令被执行引用。CAQuietExec命令字符串必须以引用的应用程序名称开头
<Component Id="MapObjectsRuntime' Guid='*'>
<File Id = 'Mo23rtEXE' Name='Mo23rt.exe' Source='....' KeyPath="yes"/>
<Component>
<Property Id = "QtExecCmdLine" Value="Mo23rt.exe" />
// I've tried single & double quotes, and double double quotes around Mo23.
<CustomAction Id = "InstallMapObjects" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="immediate" Return="check" />
<InstallExecuteSequence>
<Custom Action="InstallMapObjects" After="InstallFinalize">NOT Installed</Custom>
</InstallExecuteSequence>
我得到一个警告构建WiX工程: 文件Mo23rtEXE不是一个字体,它的版本是不是伴随文件引用。
我还需要分配命令行参数到mo23rt.exe命令,但我第一个只是试图让这个工作。谷歌透露,很多人似乎也在为此苦苦挣扎。
忘了补充一点,运行setup.exe的/ L * V install.log的有:
MSI Doing action: InstallMapObjects
.
.
Property Change: Deleting QtExeCmdLine property. Its current value is 'Mo23rt.exe'.
CAQuitExec: Command string must begin with quoted application name.
CAQuietExec: Error 0x80070057 invalid command line property value
我建议使用包装中“的和USIG [DIR] mo23rt.exe或[#fileKey]其中的FileKey的EXE的文件ID。这是更好地完全限定EXE路径则认为它会(它可能不会) – 2011-02-18 21:03:25