Difxapp 没有 运行 INF 的 DefaultInstall 部分

Difxapp does not run DefaultInstall section of the INF

我正在尝试使用 difxapp 安装内核驱动程序。驱动程序完全认证,.inf、.cat 和.sys 文件都在各自的组件中。

<Component Id="DriverComponents" Guid="{someGuid}" Win64="yes">
  <difxapp:Driver AddRemovePrograms="yes" DeleteFiles="no" Legacy="no" PlugAndPlayPrompt="no" ForceInstall="no"/>
  <File Id="MyDriver.inf" Name="MyDriver.inf" Vital="no" />
  <File Id="MyDriver.cat" Name="MyDriver.cat" Vital="no" />
  <File Id="MyDriver.sys" Name="MyDriver.sys" Vital="no" KeyPath="yes" />
</Component>

我尝试了 Legacy 和 ForceInstall 标志的不同组合,但仍然无法安装驱动程序。 在 setupapi.dev.log 中,我看到驱动程序存储在驱动程序存储区,但 INF 的 DefaultInstall 部分从未执行(setupapi.dev.log 不包含即插即用服务部分)。 在我的例子中,DefaultInstall 部分注册内核服务并对注册表进行更改。 所有驱动文件都可以,因为“人民币.INF文件->安装”正确安装驱动。

我知道安装可以通过自定义操作完成,但这会导致痛苦,并且需要对 Upgrade/Rollback 场景进行大量特殊处理。

是否可以强制使用本机 Wix 工具实际安装驱动程序?

不要使用 difxapp,来自 Wix 支持: “DifxApp 已经被弃用了很长一段时间。WiX 不拥有 DifxApp,因此无法修复它的任何错误。” https://docs.microsoft.com/en-us/windows-hardware/drivers/install/difx-guidelines