
我的目標是為 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
這個腳本目前是無害的由於命令臨近結束時echo
前面有一個。在刪除pnputil
該內容之前echo
,腳本應該是完全安全的。