wix - 无法卸载由 INSTALLER1 安装并由 INSTALLER2 升级的驱动程序
问题描述
我们有一个驱动程序由两个不同的 WiX 安装程序提供,因此我在两个安装程序源代码 (.wxs) 中使用了相同的驱动程序组件 GUID。shared="yes" 并将文件密钥路径标记为 "Yes"。
<Component Id="MYDRiverID"
DiskId ="1"
Guid="EXXXXXX-XXX-XX"
Win64="$(var.Is64bit)" Shared="yes">
<File Id="myDriver"
Name="driver.sys"
Source="Dir\driver.sys"
KeyPath="yes"/>
<difx:Driver Legacy="no"
Sequence="10"
AddRemovePrograms="no"
DeleteFiles="yes"
PlugAndPlayPrompt="no"
ForceInstall="no"/>
我在卸载时面临如果通过INSTALLER1安装 1.0.0.0 并使用INSTALLER2 2.0.0.0升级,则替换较新的驱动程序文件,但是在卸载时如果我使用添加/删除程序 ==>>INSTALLER2 卸载,当我检查时它无法删除驱动程序“sc query mydriver”我的驱动程序没有被卸载。
检查卸载日志/eventvwr 未发现任何错误/失败消息。
MSI (s) (F0:74) [19:39:55:832]: Component: _Driver_MYDriver.sys_Win8.XXXXXXX_XXXX_4XXXX3_XXXXX_XXXXXXXXXXXX; Installed: Local; Request: Absent; Action: Null; Client State: Local
MSI (s) (F0:74) [19:39:55:928]: The file represented by File table key 'MYDriversysWin7' has no eligible binary patches
MSI (s) (F0:74) [19:39:55:928]: The file represented by File table key 'MYDriversysWin8' has no eligible binary patches
MSI (s) (F0:74) [19:39:55:928]: The file represented by File table key 'MYDriverinfWin7' has no eligible binary patches
MSI (s) (F0:74) [19:39:55:928]: The file represented by File table key 'MYDrivercatWin7' has no eligible binary patches
MSI (s) (F0:74) [19:39:55:928]: The file represented by File table key 'MYDriverinfWin8' has no eligible binary patches
MSI (s) (F0:74) [19:39:55:928]: The file represented by File table key 'MYDrivercatWin8' has no eligible binary patches
DIFXAPP: INFO: 'Component' is '_Driver_MYDriver.sys_Win7.XXXXXXX-XXXX-XXXX-XXXXXXX'
DIFXAPP: INFO: This is a no-op custom action for component _Driver_MYDriver.sys_Win7.XXXXXXX-XXXX-XXXX-XXXXXXX. The NoOp_{XXXXXXX-XXXX-XXXX-XXXXXXX} property has been set to TRUE.
DIFXAPP: INFO: 'Component' is '_Driver_MYDriver.sys_Win8.XXXXXXX-XXXX-XXXX-XXXXXXX'
DIFXAPP: INFO: This is a no-op custom action for component _Driver_MYDriver.sys_Win8.XXXXXXX-XXXX-XXXX-XXXXXXX. The NoOp_{MYDRIVER_COMPONENT_GUID} property has been set to TRUE.
MSI (s) (F0:74) [19:39:56:068]: Executing op: RegOpenKey(Root=-2147483646,Key=SYSTEM\CurrentControlSet\Services\MYDriver,,BinaryType=1,,)
DIFXAPP: INFO: 'Component' is '_Driver_MYDriver.sys_Win7.XXXXXXX-XXXX-XXXX-XXXXXXX'
DIFXAPP: INFO: This is a no-op for component _Driver_MYDriver.sys_Win7.XXXXXXX-XXXX-XXXX-XXXXXXX. The NoOp_{XXXXXXX-XXXX-XXXX-XXXXXXX} property has been set to TRUE.
DIFXAPP: INFO: Skipping cleanup for component _Driver_MYDriver.sys_Win7.XXXXXXX-XXXX-XXXX-XXXXXXX, since it is a no-op.
DIFXAPP: INFO: 'Component' is '_Driver_MYDriver.sys_Win8.XXXXXXX-XXXX-XXXX-XXXXXXX'
DIFXAPP: INFO: This is a no-op for component _Driver_MYDriver.sys_Win8.XXXXXXX-XXXX-XXXX-XXXXXXX. The NoOp_{MYDRIVER_COMPONENT_GUID} property has been set to TRUE.
DIFXAPP: INFO: Skipping cleanup for component _Driver_MYDriver.sys_Win8.XXXXXXX-XXXX-XXXX-XXXXXXX, since it is a no-op.
Property(S): DRIVER_MYPRODUCT_COMPONENT_DIR_WIN7 = C:\Program Files\Common Files\XXXXX\Win7\
我在 Windows 8 上收集了这些日志驱动程序。
添加了一项用户模式服务以验证它是否成功安装/升级/卸载,我不明白为什么驱动程序失败。
任何帮助都会非常有帮助。
解决方案
推荐阅读
- sql - 在 SQL 中操作数据(回填、透视)
- javascript - 从 react.js 列表中的数组中选择最多 3 个类别列表
- c++ - 使用和不使用 std::cout 语句的代码行为不同
- amazon-web-services - 无法在 AWS Lambda 控制台中编辑代码
- javascript - 如何使用 attr 和 appscript 更改 css 内容
- python-3.x - Tkinter,窗口没有关闭
- .net - Powershell 在 WIx 安装程序中不工作
- uwp - 无论布局背景颜色如何,如何保留 Windows.UI.Xaml.Controls.Image 内容颜色?
- c - 为什么这个 sizeof(int) 程序在运行时打印出 false ?
- python - 如何用我自己的训练集训练文本蕴涵模型?