方法一:
1、找一台未更新前的或者卸载更新的正常电脑,C:\Windows\System32\Win32spl.dll拷贝出来,命名为Win32spl.dll.good【文章底部提供下载】
在更新后的问题电脑上操作:
2、将Win32spl.dll.good放入c盘根目录。
3、新建文本文档,拷贝以下代码,保存,修改后缀为.bat
@echo off
REM 10.0.19041.1288 bad file comes from KB5006670
:_start
copy C:\win32spl.dll.good C:\Windows\System32 /y
:wmicVersion pathToBinary [variableToSaveTo]
setlocal
set "item1=C:\Windows\System32\win32spl.dll"
set "item1=%item1:\=\\%"
set "item2=C:\Windows\System32\win32spl.dll.good"
set "item2=%item2:\=\\%"
for /f "usebackq delims=" %%a in (`"WMIC DATAFILE WHERE name='%item1%' get Version /format:Textvaluelist"`) do (
for /f "delims=" %%# in ("%%a") do set "%%#")
set existver=%version%
set version=
for /f "usebackq delims=" %%a in (`"WMIC DATAFILE WHERE name='%item2%' get Version /format:Textvaluelist"`) do (
for /f "delims=" %%# in ("%%a") do set "%%#")
set goodver=%version%
set version=
echo %existver%
echo %goodver%
IF %goodver%==%existver% echo "Files are same version" && goto _end
IF "%existver%"=="10.0.19041.1288" echo "Files are bad version" && goto _fixspooler
IF NOT %goodver%==%existver% echo "Files are different version" && goto _end
:_fixspooler
net stop spooler
timeout /t 3 /nobreak
Takeown /A /F C:\Windows\System32\win32spl.dll
icacls "C:\Windows\System32\win32spl.dll" /grant builtin\administrators:F
icacls "C:\Windows\System32\win32spl.dll" /grant SYSTEM:F
ren C:\Windows\System32\win32spl.dll win32spl-%existver%.dll
copy C:\Windows\System32\win32spl.dll.good C:\Windows\System32\win32spl.dll /Y
net start spooler
goto _end
:_end
exit
4、执行bat批处理文件。
方法二:
卸载KB5006670补丁,【控制面板】-【卸载程序】-【查看已安装的更新】,找到KB5006670右键卸载。
原创文章,作者:wwh,如若转载,请注明出处:https://www.wuwenhui.cn/5321.html
评论列表(23条)
试试看
慕名而来 试试先
试试看吧
完美解决!
慕名而来
试试看
试试看
方法一脚本报错找不到相关文件,请问啥情况
谢谢分享
但愿有用啊
试试看