Windows 驱动程序存储中包含多个冲突版本

华 兴 60 信譽點數
2026-10-31T04:55:48.59+00:00

由于 Windows 驱动程序存储(Windows Driver Store)中保留了多个版本的驱动程序,导致某台工作站出现了不稳定的硬件行为。我该如何确定当前正在使用的驱动程序包,并在不影响相关设备的前提下安全地移除那些过时的驱动程序包?

Windows 商務版 | Windows 365 企業版
0 則留言 沒有留言

1 個回答

排序依據: 最實用
  1. MUCYO Emmanuel 160 信譽點數 獨立顧問
    2026-10-31T07:25:12.55+00:00

    你好,

    当 Windows 驱动程序存储区(C:\Windows\System32\DriverStore\FileRepository)中存在驱动程序的多个版本时,Windows 会在硬件初始化期间尝试对最佳驱动程序包进行评估和选择。 存留较旧或损坏的驱动程序包可能会导致 Windows 意外切换驱动程序,从而引发硬件不稳定。

     

    要安全地识别活动驱动程序并删除过时的程序包,请按以下逐步操作进行:

     

    步骤1:识别当前正在使用的驱动程序包(识别当前正在使用的驱动程序包)

    在删除任何内容之前,请确定您的设备当前正在使用哪个确切的 OEM 程序包文件(oemXX.inf)。

     

    以管理员身份打开命令提示符(Command Prompt)或 PowerShell 并运行:

     

    pnputil /enum-devices /drivers

    在输出列表中找到您的硬件设备,并记下其驱动程序名称(例如 oem12.inf)。 这就是您的活动驱动程序包,__绝对不能__将其删除。

    或者,您可以通过设备管理器(Device Manager)进行检查:

    右键点击设备 > 属性(Properties) > 详细信息(Details)选项卡 > 在属性下拉菜单中选择__驱动程序节点名称__(Driver node name)。

    步骤2:导出库存并列出存储驱动包(导出清单并列出已存储的驱动程序包)

    1. (可选)为安全起见,在做任何更改之前,将您的驱动程序清单导出到文本文件:

    pnputil /enum-drivers > C:\DriverInventory.txt

    1. 列出当前暂存在驱动程序存储区中的所有第三方驱动程序:

    pnputil /enum-drivers

    1. 比较发布名称(oemXX.inf)、驱动程序提供商(Driver Provider)、日期和版本,以识别重复或较旧的程序包。

    示例:

    • oem12.inf — 版本 3.5.1(活动/保留)
    • oem08.inf — 版本 3.2.0(较旧/建议删除)
    • oem04.inf — 版本 3.2.0(较旧/建议删除)

    步骤3:安全移除未使用的驱动程序包(安全删除未使用的驱动程序包)

    若要从存储区中删除较旧、不需要的驱动程序包,请运行:

    pnputil /delete-driver oem08.inf

    内置安全保护: 如果您不小心尝试删除设备正在使用的驱动程序包,Windows 将阻止该操作并显示一条错误消息,指出该程序包正在使用中。

    如果某个程序包无法删除或属于孤立文件: 只有在您确认该程序包与任何活动硬件无关且正常删除失败的情况下,才可以强制将其删除:

    pnputil /delete-driver oem08.inf /force

    步骤4:验证清理结果(验证清理结果)

    再次运行枚举命令以确认只剩下活动驱动程序:

    pnputil /enum-drivers

    如果此过程解决了硬件不稳定问题并帮助您安全地清理了驱动程序存储区,请考虑点击“接受答案”("Accept Answer"),以便其他面临类似驱动程序冲突的社区成员也能看到它!

    此致敬礼。

     

    你好,

    当 Windows 驱动程序存储区(C:\Windows\System32\DriverStore\FileRepository)中存在驱动程序的多个版本时,Windows 会在硬件初始化期间尝试对最佳驱动程序包进行评估和选择。 存留较旧或损坏的驱动程序包可能会导致 Windows 意外切换驱动程序,从而引发硬件不稳定。

     

    要安全地识别活动驱动程序并删除过时的程序包,请按以下逐步操作进行:

     

    步骤1:识别当前正在使用的驱动程序包(识别当前正在使用的驱动程序包)

    在删除任何内容之前,请确定您的设备当前正在使用哪个确切的 OEM 程序包文件(oemXX.inf)。

     

    以管理员身份打开命令提示符(Command Prompt)或 PowerShell 并运行:

     

    pnputil /enum-devices /drivers

    在输出列表中找到您的硬件设备,并记下其驱动程序名称(例如 oem12.inf)。 这就是您的活动驱动程序包,__绝对不能__将其删除。

    或者,您可以通过设备管理器(Device Manager)进行检查:

    右键点击设备 > 属性(Properties) > 详细信息(Details)选项卡 > 在属性下拉菜单中选择__驱动程序节点名称__(Driver node name)。

    步骤2:导出库存并列出存储驱动包(导出清单并列出已存储的驱动程序包)

    1. (可选)为安全起见,在做任何更改之前,将您的驱动程序清单导出到文本文件:

    pnputil /enum-drivers > C:\DriverInventory.txt

    1. 列出当前暂存在驱动程序存储区中的所有第三方驱动程序:

    pnputil /enum-drivers

    1. 比较发布名称(oemXX.inf)、驱动程序提供商(Driver Provider)、日期和版本,以识别重复或较旧的程序包。

    示例:

    • oem12.inf — 版本 3.5.1(活动/保留)
    • oem08.inf — 版本 3.2.0(较旧/建议删除)
    • oem04.inf — 版本 3.2.0(较旧/建议删除)

    步骤3:安全移除未使用的驱动程序包(安全删除未使用的驱动程序包)

    若要从存储区中删除较旧、不需要的驱动程序包,请运行:

    pnputil /delete-driver oem08.inf

    内置安全保护: 如果您不小心尝试删除设备正在使用的驱动程序包,Windows 将阻止该操作并显示一条错误消息,指出该程序包正在使用中。

    如果某个程序包无法删除或属于孤立文件: 只有在您确认该程序包与任何活动硬件无关且正常删除失败的情况下,才可以强制将其删除:

    pnputil /delete-driver oem08.inf /force

    步骤4:验证清理结果(验证清理结果)

    再次运行枚举命令以确认只剩下活动驱动程序:

    pnputil /enum-drivers

    如果此过程解决了硬件不稳定问题并帮助您安全地清理了驱动程序存储区,请考虑点击“接受答案”("Accept Answer"),以便其他面临类似驱动程序冲突的社区成员也能看到它!

    此致敬礼。

     

    此回答有幫助嗎?

    0 則留言 沒有留言

您的回答

答案可由問題作者標示為「已接受」,而由仲裁者標示為「推薦」,這可協助使用者知道答案解決了作者的問題。