使用 pnputil.exe 通过 .CMD 从 FileRepository 中删除所有已安装的 OEM 驱动程序

使用 pnputil.exe 通过 .CMD 从 FileRepository 中删除所有已安装的 OEM 驱动程序

我的目标是为 Windows 命令提示符创建一个批处理文件,它将检查 Windows 从 WU 下载的所有设备驱动程序或/以及已手动安装的所有设备驱动程序,然后Windows\System32\DriverStore\FileRepository一次性将其从中删除。

据我所知,批处理脚本应该运行一个循环,该循环将不断检查第一个Oem*.inf使用pnputil.exe -e,将其放入变量中,运行pnputil.exe -d variable,然后重新开始,直到pnputil.exe -e返回零结果,然后退出。

不幸的是,我所谓的知识就到此为止了,所以我请求你的帮助。拜托。

答案1

我不想这么说……但这似乎是个坏主意。以前,带有 oemXX.inf 的所有内容都是由用户而不是操作系统安装的。现在,有了 Windows 10……我没有将这些驱动程序中的大多数放在我的系统上。

尽管如此,你要求就会得到。这有点马虎,但应该会有效。

@echo off

for /f "delims=" %%v in ('pnputil /e ^| findstr /C:"Published name"') do call :line_process "%%v"
goto :EOF


:line_process
Set InputLine=%~1
Set InputLine=%InputLine:~28%

echo.
echo Oem line found: "%InputLine%", removing this package
echo pnputil /delete-driver %InputLine% /uninstall /force

goto :EOF

此脚本目前无害由于命令末尾附近有一个echopnputilecho删除该命令之前,脚本应该是绝对安全的。

相关内容