我们通过计算机管理来卸载驱动,有时候会卸载不干净,看着卸载了不过一刷新就又回来了。那是因为Windows的特殊机制,就是你在卸载它的时候,它会给你备份一下,然后等你硬件重新插回的时候,它会检测备份目录里是否有相对应的驱动文件,如果有则给你装上。个人感觉有点多此一举了,所以要想完全卸载驱动,则需要通过
pnputil
命令来卸载删除备份驱动。(也是在别的地方看到的,不过原网址找不到了,说错了忘各位大佬纠正)
命令使用
# 新版命令参数
pnputil [/add-driver <...> | /delete-driver <...> |
/export-driver <...> | /enum-drivers |
/disable-device <...> | /enable-device <...> |
/restart-device <...> | /remove-device <...> |
/scan-devices <...> | /enum-devices <...> |
/enum-interfaces <...> | /?]
# 旧版命令映射
-a [-i] <filename.inf> ==> /add-driver <filename.inf> [/install]
-d [-f] <oem#.inf> ==> /delete-driver <oem#.inf> [/force]
-e ==> /enum-drivers
Demo
我就我常用的查看、卸载、备份来演示
# 查看所有的驱动
## 新命令
PnPutil /enum-drivers
## 老命令,更简单一点,虽然不建议使用,但比较简洁好记,所以用的还是比较多的
PnPutil -e
Microsoft PnP 工具
发布名称: oem21.inf
驱动程序程序包提供程序: Apple, Inc.
类: 通用串行总线设备
驱动程序日期和版本: 10/02/2020 486.0.0.0
签名者姓名: Microsoft Windows Hardware Compatibility Publisher
发布名称: oem23.inf
驱动程序程序包提供程序: Intel
类: 系统设备
驱动程序日期和版本: 11/29/2018 8.5.10103.7212
签名者姓名: Microsoft Windows Hardware Compatibility Publisher
发布名称: oem17.inf
驱动程序程序包提供程序: Intel
类: 系统设备
驱动程序日期和版本: 11/29/2018 8.5.10103.7212
签名者姓名: Microsoft Windows Hardware Compatibility Publisher
发布名称: oem16.inf
驱动程序程序包提供程序: Intel Corporation
类: 扩展
驱动程序日期和版本: 09/05/2020 27.20.100.8681
签名者姓名: Microsoft Windows Hardware Compatibility Publisher
发布名称: oem27.inf
驱动程序程序包提供程序: Intel Corporation
类: 扩展
驱动程序日期和版本: 04/11/2019 26.20.100.6709
签名者姓名: Microsoft Windows Hardware Compatibility Publisher
发布名称: oem13.inf
驱动程序程序包提供程序: Intel
类: 系统设备
驱动程序日期和版本: 11/19/2017 11.7.0.1057
签名者姓名: Microsoft Windows Hardware Compatibility Publisher
发布名称: oem6.inf
驱动程序程序包提供程序: Intel
类: 系统设备
驱动程序日期和版本: 07/12/2018 1828.12.0.1152
签名者姓名: Microsoft Windows Hardware Compatibility Publisher
发布名称: oem0.inf
驱动程序程序包提供程序: Intel Corporation
类: IDE ATA/ATAPI 控制器
驱动程序日期和版本: 04/10/2017 14.8.16.1063
签名者姓名: Microsoft Windows Hardware Compatibility Publisher
发布名称: oem26.inf
驱动程序程序包提供程序: Intel Corporation
类: 蓝牙
驱动程序日期和版本: 01/14/2019 20.120.0.3
签名者姓名: Microsoft Windows Hardware Compatibility Publisher
………………………………………………
# 假设我们要删除蓝牙的
## 那我们可以输入下面的命令
## 新命令
PnPutil /delete-driver oem26.inf
## 老命令
PnPutil -d oem26.inf
# 备份所有驱动到指定目录,目录需要提前创建好,建议使用英文
pnputil /export-driver * D:\\backup
虽然微软提供了相对应的程序供我们使用,但对于不经常使用命令的同学来说可能有点困难,而且使用命令的误删除操作也大。建议大家可以使用DriverStore Explorer
可视化来操作。DriverStore Explorer
是一款基于PnPUtil命令图形化的一款开源工具,只需要运行它就可只能显示系统中所有已经安装的驱动程序和备份的旧版驱动,还可以一键选中所有的备份旧版驱动。
image-20210527151053910