Как я могу использовать Wix для развертывания драйвера USB на основе Inf

StackOverflow https://stackoverflow.com/questions/1197514

  •  20-09-2019
  •  | 
  •  

Вопрос

Этот вопрос можно считать дубликатом:

Как развернуть драйвер на основе .inf?

За исключением того, что я хочу сделать это полностью в установщике, а не с отдельной программой.

Здесь должен быть пример загружаемых:http://msdn.microsoft.com/en-us/library/dd163212.aspx

Но на этой странице нет ссылки для загрузки.

Структура драйвера очень проста, просто инф и Sys. Я пробовал это:

  <Directory Id='SystemFolder' Name='System32'>
    <Directory Id='DriversFolder' Name='Drivers'/>
  </Directory>

...

<DirectoryRef Id="DriversFolder">
  <Driver Id="cyusb" Guid="*">
    <File Id="cyusb.inf" Source="..\Includes\cyusb.inf" />
  </Driver>
  <Driver Id="cyusb_sys" Guid="*">
    <File Id="cyusb.sys" Source="..\Includes\cyusb.sys" />
  </Driver>
</DirectoryRef>

С 'wixdifxappextension.dll' и difxapp_x86, включенные в виде ссылок на мой проект, а тег «драйвера» не распознается. Если я использую «компонент» вместо «драйвера», то полученный файл фактически не распознается в качестве драйвера, и я должен сделать ручную установку.

Что я здесь делаю не так? Или мне придется написать еще одну программу, чтобы этот установщик работал? Это в WIX 3.0.

Это было полезно?

Решение

Согласно руководству, <Driver> должен быть под <Component>, и ваш Wix должен выглядеть примерно так:

<DirectoryRef Id="DriversFolder" FileSource="..\Includes\">
  <Component Id="MyDriver" Guid="[PUT GUID]">
    <Driver Legacy='yes' />
    <File Id="cyusb.inf" Vital="yes" />
    <File Id="cyusb.sys" Vital="yes" />
  </Component>
</DirectoryRef>

Больше информации от Блог этого парня

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top