我的应用程序设置MSI,我还签署了需要安装的FTDI驱动程序。我希望他们安装Burn而不是WiX MSI来保持CustomActions不在MSI之外(但是,我也尝试了CA路由)。
我已尝试将指令放在ExePackage
中,但SourceFile
属性在构建期间请求文件位置,而不是运行时(例如<ExePackage Id="InstallDrivers" DisplayName="Installing Drivers" SourceFile="[InstallFolder]Drivers\DPInst.exe" InstallCommand="/SA /SW" PerMachine="yes" After="MyMSISetup" Description="Installing the FTDI drivers needed for device communication." />
不构建)。< / p>
有没有办法告诉Burn使用安装MSI后驱动程序所在位置的文件位置来执行DPInst?目前,MSI将驱动程序文件和DPInst复制到安装目录中的Drivers
文件夹中。在线查看Stack Overflow后,我似乎没有其他人这样做。
我也尝试在MSI中使用CustomAction
路由,但CustomAction
无法执行。我想用Burn安装驱动程序,但是如果它们与MSI一起使用我就会满足于此。目前,MSI将文件复制到Drivers文件夹,CustomAction如下所示:
<InstallExecuteSequence>
<Custom Action="Install_Signed_Driver" After="InstallFiles">NOT INSTALLED</Custom>
</InstallExecuteSequence>
<Fragment>
<CustomAction Id=Install_Signed_Driver" Execute="deferred" Directory="Drivers" ExeCommand="[Drivers]DPInst.exe" /SW /SA" Return="ignore" />
</Fragment>
尽我所知,自定义操作永远不会运行。我甚至取消了/SW
和/SA
开关,看看是否有任何东西加载,什么都没有。
答案 0 :(得分:0)
根据StackOverflow的建议,我发布了我在这里找到的内容。我无法让Burn为驱动程序安装运行DPInst,但能够使用Can't seem to get Wix to install driver使CustomAction工作。