15

这个问题可以被认为是重复的:

如何部署基于 .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 都作为对我的项目的引用包含在内,并且无法识别“驱动程序”标签。如果我使用“组件”而不是“驱动程序”,则生成的文件实际上不会被识别为驱动程序,我必须手动安装。

我在这里做错了什么?还是我必须编写另一个程序才能使此安装程序正常工作?这是在 Wix 3.0 中。

4

2 回答 2

12

根据手册,<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>

来自这个人的博客的更多信息

于 2009-08-03T20:10:17.577 回答
3

我也有同样的问题。以下对我有用。

添加到项目 2 参考:

  • WixDifxAppExtension
  • diffxapp_x64.wixlib

Wix在.wxs 文件的节点内,我添加了属性:

xmlns:difxapp='http://schemas.microsoft.com/wix/DifxAppExtension'

看起来它需要引用和使用difxapp命名空间。

Component包含该.inf文件的文件中,我添加了:

<difxapp:Driver PlugAndPlayPrompt="no"/>
于 2019-12-19T11:18:23.093 回答