echo 如果您在最近的Windows系统更新后,系统运行不正常,请按下Ctrl+C终止清理。 pause echo 正在清理注册表中的相关内容... rem 建立注册表清理和log文件清理的子批处理文件 echo @echo off>c:\tmp.bat echo if %%tp:~12,-1%%!==! goto end>>c:\tmp.bat echo echo Windows Registry Editor Version 5.00^>c:\tmp.reg>>c:\tmp.bat echo echo.^>^>c:\tmp.reg>>c:\tmp.bat echo echo [-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\%%tp:~12,-1%%]^>^>^c:\tmp.reg>>c:\tmp.bat rem 如果要清除注册表ARPCache项中的内容,那么可以将下面一行前面的两个冒号去掉 ::echo echo [-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Management\ARPCache\%%tp:~12,-1%%]^>^>^c:\tmp.reg>>c:\tmp.bat echo regedit /s c:\tmp.reg>>c:\tmp.bat echo if exist %%windir%%\%%tp:~12,-1%%.log del %%windir%%\%%tp:~12,-1%%.log>>c:\tmp.bat echo :end>>c:\tmp.bat rem 检测要删除的内容,结果保存到c:\tmp.txt中 dir %windir%\$Nt*$ /b/ad>c:\tmp.txt if not exist c:\tmp.txt goto end rem 调用子批处理文件,将检测到的内容清理掉 for /f %%v in ('findstr "KB Q" c:\tmp.txt') do ( set tp=%%v call c:\tmp.bat ) rem 清理磁盘中的文件夹 echo 正在清理文件,可能需要较长时间,清理完毕此窗口会自动关闭.请等待.... for /f %%i in ('dir %%windir%%\$*$ /b/ad') do rd %windir%\%%i /s/q rem 善后工作 :end if exist c:\tmp.txt del c:\tmp.txt if exist c:\tmp.bat del c:\tmp.bat if exist c:\tmp.reg reg c:\tmp.reg