Как использовать WiX для развертывания USB-драйвера на основе INF
Этот вопрос можно рассматривать как дубликат:
Как развернуть драйвер на основе .inf?
За исключением того, что я хочу сделать это полностью в установщике, а не с отдельной программой.
Здесь должен быть приведен пример:
http://msdn.microsoft.com/en-us/library/dd163212.aspx
Но на этой странице нет ссылки для скачивания.
Структура драйвера очень проста, просто inf и 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, которые включены в качестве ссылок на мой проект, и тег 'driver' не распознается. Если я использую "компонент" вместо "driver", то полученный файл фактически не распознается как драйвер, и я должен выполнить ручную установку.
Что я здесь делаю неправильно? Или мне придется написать еще одну программу, чтобы этот установщик работал? Это в Wix 3.0.
Ответы
Ответ 1
В соответствии с manual <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>
Дополнительная информация из этот блог-блог