我有一台 Windows 8.1 PC,我必须在上面安装 Rutoken Drivers 实用程序。显然,旧版本的卸载对 Windows 驱动程序存储造成了一些损害,现在每当我尝试安装该软件包时,我都会收到 1603 Windows Installer 错误。我已将问题缩小到安装/卸载驱动程序,因为pnputil
返回错误 13 (0x0D),描述为“无效数据”。哪些数据是无效的,我不明白。
问题是现在我无法安装任何驱动程序,并且pnputil
它的包装器或底层 API 调用都返回相同的 0x0D 错误。我尝试过,sfc /scannow
没有错误,dism /online /cleanup-image /scanhealth
- 1 个“有效负载损坏”,并且无法修复该“损坏”,错误代码为 0x80240021(从 Windows 更新下载超时 - 受影响的包不存在)。
搜索 Google 没有返回任何其他可能的操作。我甚至尝试手动删除所有包含这些驱动程序信息的注册表项以及 %SystemRoot%\inf 和 %SystemRoot%\system32\DriverStore\FileRepository 中的所有文件,这导致驱动程序正式被卸载,因此我在安装该包时收到的错误减少了 2 个,但主要问题仍然存在。除了重新安装 Windows 之外,我别无选择,但由于服务器上正在运行敏感负载,因此这还不允许。
有什么办法可以修复 Windows 8 驱动程序存储中的元数据?
更新:相关部分setupapi.dev.log
如下。这是第一个记录错误的部分:
[Boot Session: 2014/04/30 10:21:02.496]
>>> [Device Install (DiShowUpdateDevice) - USB\VID_04A9&PID_3155\D1FD7268198E4248B690D4C39EF7FA4D]
>>> Section start 2014/05/20 13:12:15.744
cmd: "C:\WINDOWS\system32\mmc.exe" "C:\WINDOWS\system32\compmgmt.msc" /s
dvi: {DIF_UPDATEDRIVER_UI} 13:12:15.757
dvi: No class installer for 'Canon Digital Camera'
dvi: No CoInstallers found
dvi: Default installer: Enter 13:12:15.766
dvi: Default installer: Exit
dvi: {DIF_UPDATEDRIVER_UI - exit(0xe000020e)} 13:12:15.771
ndv: {Update Driver Software Wizard for USB\VID_04A9&PID_3155\D1FD7268198E4248B690D4C39EF7FA4D}
ndv: Driver package 'C:\WINDOWS\INF\wpdmtp.inf' exists under 'C:\WINDOWS\System32\DriverStore\FileRepository\wpdmtp.inf_amd64_5c9850dbde92cf4e\wpdmtp.inf'.
dvi: Searching for hardware ID(s):
dvi: usb\vid_04a9&pid_3155&rev_0001
dvi: usb\vid_04a9&pid_3155
dvi: Searching for compatible ID(s):
dvi: usb\class_06&subclass_01&prot_01
dvi: usb\class_06&subclass_01
dvi: usb\class_06
dvi: Class GUID of device changed to: {eec5ad98-8080-425f-922a-dabf3de3f69a}.
!!! ndv: Device install failed for device.
!!! ndv: Error 13: The data is invalid.
ndv: Installing NULL driver.
ndv: {Update Driver Software Wizard exit(0000000d)}
<<< Section end 2014/05/20 13:12:23.679
<<< [Exit status: FAILURE(0x0000000d)]
这部分是重新安装 Rutoken Drivers 时发生的情况:
>>> [SetupCopyOEMInf - C:\WINDOWS\System32\DriverStore\FileRepository\rtusb.inf_amd64_19d5bedeabf631df\rtusb.inf]
>>> Section start 2014/05/26 18:28:17.278
cmd: C:\Windows\System32\MsiExec.exe -Embedding D9545376710EF829AA7DF44D8CF55F60 M Global\MSI0000
inf: Driver Store Path: C:\WINDOWS\System32\DriverStore\FileRepository\rtusb.inf_amd64_19d5bedeabf631df\rtusb.inf
inf: Published Inf Path: C:\WINDOWS\INF\oem8.inf
<<< Section end 2014/05/26 18:28:17.278
<<< [Exit status: SUCCESS]
>>> [SetupUninstallOEMInf - oem8.inf]
>>> Section start 2014/05/26 18:28:17.356
cmd: C:\Windows\System32\MsiExec.exe -Embedding D9545376710EF829AA7DF44D8CF55F60 M Global\MSI0000
inf: Driver Store Path: C:\WINDOWS\System32\DriverStore\FileRepository\rtusb.inf_amd64_19d5bedeabf631df\rtusb.inf
sto: {Setup Delete Driver Package: C:\WINDOWS\System32\DriverStore\FileRepository\rtusb.inf_amd64_19d5bedeabf631df\rtusb.inf} 18:28:17.356
!!! sto: Failed to call to delete driver package. Error = 0x0000000D
sto: {Setup Delete Driver Package - exit (0x0000000d)} 18:28:17.372
!!! inf: Failed to delete package from Driver Store
!!! inf: Error 13: The data is invalid.
!!! inf: Error uninstalling OEM INF 'C:\WINDOWS\INF\oem8.inf'
!!! inf: Error 13: The data is invalid.
<<< Section end 2014/05/26 18:28:17.387
<<< [Exit status: FAILURE(0x0000000d)]
从那时起,每次安装/卸载都会失败,并出现 0x0000000D。
答案1
答案显然是否定的,你无法修复驱动程序存储。最后只能重新安装 Windows 才能修复。