1

将 LaunchTarget 例如设置为“cmd.exe”可以正常工作,安装刻录包后,会弹出所需的命令行窗口。但是,将 LaunchTarget 设置为例如“[InstallFolder]\Path\To\Postinstallexecutable.exe”会产生错误:

Error 0x80070002: Failed to launch target: C:\Program Files (x86)\Path\To\Postinstallexecutable.exe

路径正确,在命令行执行“C:\Program Files (x86)\Path\To\Postinstallexecutable.exe”可以正常工作。这是一个错误还是我错过了什么?WiX 工具集版本为 3.8.309.0。

更新:经过多一点测试,问题似乎只有在您尝试将参数传递给 LaunchTarget 中的命令时才会出现。所以例如使用

<Variable Name="LaunchTarget" Value="[InstallFolder]\Basiskomponenten\Allgemein\test.cmd" />

工作,而

<Variable Name="LaunchTarget" Value="[InstallFolder]\Basiskomponenten\Allgemein\test.cmd Test123" />

导致 0x80070002 错误。

4

1 回答 1

2

LaunchTarget变量仅指向应该启动的可执行文件,不能提供命令行参数。直到最近的 WiX v3.8 版本,您才可以设置第二个变量LaunchArguments来提供参数。因此,尝试升级到昨天的 WiX v3.8 版本(或更高版本)并执行以下操作:

<Variable Name="LaunchTarget" Value="[InstallFolder]\Basiskomponenten\Allgemein\test.cmd" />
<Variable Name="LaunchArguments" Value="Test123" />
于 2013-04-16T14:19:41.313 回答