使用Executable安装驱动程序

时间:2010-06-30 19:43:12

标签: wix custom-action

我正在编写一个需要安装驱动程序作为先决条件的WiX安装程序。有一个需要运行的可执行文件,可以在PC上安装驱动程序。我不想在主机上安装这个可执行文件。有x64和x86版本,根据平台,需要安装一个或另一个。

当前使用命令行运行可执行文件: C:\ Comp \ code \ install \ canned \ tabload \ x86> tabload install“* tab1394”“C:/ Comp / code / install / canned / tab1394 / x86”

最后一个参数是驱动程序的.cat,.sys和.inf文件的位置

我目前的代码是:

<!-- Install correct device driver -->
<?if $(var.Platform) = x64?>
  <Property Id="Win64">1</Property>
<?else?>
  <Property Id="Win64">0</Property>
<?endif?>

<Binary Id="tabload64EXE" SourceFile="C:/Tableau/code/install/canned/tabload/x64/tabload.exe"  />
<Binary Id="tabload32EXE" SourceFile="C:/Tableau/code/install/canned/tabload/x86/tabload.exe" />
<CustomAction Id="LaunchFile64" 
              BinaryKey="tabload64EXE" 
              ExeCommand='tabload "*tab1394" "C:/comp/code/install/canned/tab1394/x64 "' 
              Return="asyncNoWait" />
<CustomAction Id="LaunchFile32" 
              BinaryKey="tabload32EXE" 
              ExeCommand='tabload install "*tab1394" "C:/comp/code/install/canned/tab1394/x86 "' 
              Return="asyncNoWait" />

<InstallExecuteSequence>
  <Custom Action="LaunchFile64" After="InstallFinalize">Win64</Custom>
  <Custom Action="LaunchFile32" After="InstallFinalize">NOT Win64</Custom>
</InstallExecuteSequence>

我看过Orca的桌子。 Win64属性似乎正确设置。将显示自定义操作和二进制文件,并且自定义操作的目标是指示的命令行。自定义操作是196型,我找不到任何在线文档。当我构建并安装安装包时,程序已安装但未安装驱动程序组件。请告知如何纠正这种情况。

谢谢!

1 个答案:

答案 0 :(得分:0)

MSI SDK CustomAction table具有解密类型的链接。我将猜测根本问题是自定义操作不会被延迟,因此它们不会被提升的事务执行。

相关问题