Я работаю над написанием установщика WiX, который должен установить драйвер в качестве необходимого условия. Существует исполняемый файл, который необходимо запустить, который устанавливает драйвер на ПК. Я не хочу устанавливать этот исполняемый файл на хост-машину. Существует как версия 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>
Я посмотрел на столов в Орке. Кажется, что свойство Win64 правильно настроено. Появляются пользовательские действия и двоичные файлы, а Target для пользовательского действия - указанная командная строка. Обычное действие - тип 196, и я не могу найти документацию для этого онлайн. Когда я создаю и устанавливаю установочный пакет, программа устанавливается, но компонент драйвера не установлен. Пожалуйста, сообщите, как исправить ситуацию.
Спасибо!
Спасибо за ответ! Я попытался добавить Execute = «отложен» в CustomAction, и это не решило проблему. – Katelyn