亲测: 在Windows安装后不要删除XBox及相关应用可以避免更新失败并反复重启的问题.
介绍:
V3和V2版本不一样的地方是,V3版本是阻止"usosvc"服务启动,而V2版本是阻止"wuauserv"服务启动,由于"wuauserv"同时也提供了应用商店等其他程序的更新服务,因此禁用后会导致应用商店等其他程序无法更新,使用V3版本则无此问题,因为V3版本禁用的服务"usosvc"不影响其它程序,仅对Windows更新程序起作用;
该脚本可以关闭"usosvc"(Win10自动更新服务),并阻止其自动启动;
需要再次运行脚本,并选择恢复,才能启动"usosvc"(Win10自动更新服务);
该脚本的原理是,在注册表的"usosvc"主键下,增加一个名称为"WOW64"的DWORD值,数据为0000014c;
该值会阻止usosvc服务的启动;需要恢复的时候删除此值即可;
相对于彻底删除服务的方法,此方法改动小,风险小,但只支持64位Win10(32位的已验证不管用);
脚本运行界面如下:
按提示操作即可;
脚本代码如下(文件名"管理Win10自动更新v3.vbs",保存类型"所有文件",保存编码"ANSI"):
' 管理Win10自动更新v3.vbs.
' 20210322 更改服务名称为usosvc,升级版本号为v3;
' 20190607 初始版本,实现了基本功能;
' 使用说明 https://blog.csdn.net/milaoshu1020/article/details/115062811
Const usosvc_reg = "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\usosvc"
Set fso = createobject("scripting.filesystemobject")
Set shell = createobject("wscript.shell")
curdir = fso.getparentfoldername(wscript.scriptfullname)
If wscript.arguments.count = 0 Then
Set sh = createobject("shell.application")
sh.shellexecute wscript.fullname,"""" & wscript.scriptfullname & """ -admin",,"runas"
ElseIf wscript.arguments.count = 1 And wscript.arguments(0) = "-admin" Then
run
Else
msgbox "脚本启动参数错误!"
End If
Sub Run()
Do
ret = inputbox("1. 禁止Win10自动更新;" & vbcrlf & _
"2. 恢复Win10自动更新;" & vbcrlf & _
vbcrlf & _
"请输入序号:","管理Win10自动更新v3","1")
Select Case ret
Case "1"
retnum = shell.run("sc.exe stop usosvc",0,True)
shell.regwrite usosvc_reg & "\WOW64",&H14c,"REG_DWORD"
msgbox "已禁止Win10自动更新!",vbexclamation
Exit Do
Case "2"
shell.regdelete usosvc_reg & "\WOW64"
retnum = shell.run("sc.exe start usosvc",0,True)
msgbox "已恢复Win10自动更新!",vbexclamation
Exit Do
Case ""
Exit Do
Case Else
msgbox "输入错误!请重新输入!",vbcritical
End Select
Loop
End Sub
为了方便菜鸟,这里提供脚本的下载地址.
CSDN下载:
https://download.csdn.net/download/milaoshu1020/88694304
百度网盘:
链接:https://pan.baidu.com/s/1znoem_AzzKltWKFg8I6_wQ
提取码:yqip