Win10论坛

Win10正式版系统下载主题平板

重定义Modern UI,打造完美Windows全新体验

Windows10下载|安装|新手宝典|必备软件

搜索
查看: 5904|回复: 4

用脚本开启Microsoft Update的方法 [复制链接]

水稻

Rank: 7Rank: 7Rank: 7

UID
3526898
帖子
1299
PB币
594
贡献
0
技术
54
活跃
618
发表于 2015-2-9 00:14:42 |显示全部楼层
本帖最后由 acmilan_11 于 2015-2-21 16:04 编辑

微软的官方网站(update.microsoft.com)也是用这个方法来开启6.0.6000、6.1.7600、6.2.9200的Microsoft Update的。
可是这个网站有个缺点:不支持IE11。由于IE11更改了UserAgent字符串,因此从IE11上点击如下这个链接时,会导向一个不可用的提示信息。当然可以添加兼容性视图,但是对于离线的应用来说还是不方便。微软在安装完Office 2007以后版本之后会自动开启Microsoft Update,但是一旦你时候取消了那个选项,想再找到这个选项就困难了。微软把Microsoft Update隐藏了起来。〔Win8.1终于修复了这一蛋疼的遗留问题〕另外,在安装Office 2003之后也不会开启Microsoft Update。

传统的开启方法:点那个链接。(需要Internet)


除非你点那个链接开启了Microsoft Update,否则WU设置选项里是不会有这个选项的。


开启之后,注意第三行的字样:已经有Microsoft Update了。


开启Microsoft Update以后:WU设置中出现了两个Microsoft Update选项。


这是PowerShell程序

以下是代码(手机上可能看不到,请用电脑查看):
  1. # 开启Microsoft Update的PowerShell脚本
  2. $ServiceManager = New-Object -ComObject "Microsoft.Update.ServiceManager"
  3. $ServiceManager.ClientApplicationID = "My App"
  4. $ServiceManager.AddService2("7971f918-a847-4430-9279-4a52d1efe18d",7,"")
复制代码
  1. ' 开启Microsoft Update的VBScript脚本(核心代码)
  2. Set ServiceManager = CreateObject("Microsoft.Update.ServiceManager")
  3. ServiceManager.ClientApplicationID = "My App"
  4. Set NewUpdateService = ServiceManager.AddService2("7971f918-a847-4430-9279-4a52d1efe18d",7,"")
复制代码
  1. ' 最终版VBScript程序(兼容UAC)

  2. ' Execute this program again with admin privilege (for UAC compatibility).
  3. if WScript.Arguments.length = 0 Then
  4.   Dim objShell
  5.   Set objShell = CreateObject("Shell.Application")
  6.   objShell.ShellExecute "wscript.exe", Chr(34) & WScript.ScriptFullName & Chr(34) & " uac", "", "runas", 1
  7. else
  8.   CALL MAIN()
  9. end if

  10. SUB MAIN() ' Program starts here

  11. vReturn = MsgBox("Enable Microsoft Update for Windows Vista/7/8?",vbYesNo,"Microsoft Update")
  12. if vReturn = vbYes then
  13.   Set ServiceManager = CreateObject("Microsoft.Update.ServiceManager")
  14.   ServiceManager.ClientApplicationID = "My App"
  15.   Set NewUpdateService = ServiceManager.AddService2("7971f918-a847-4430-9279-4a52d1efe18d",7,"")
  16.   MsgBox "Microsoft Update enabled. Try Windows Update again.",vbOKOnly,"Microsoft Update"
  17. end if

  18. END SUB ' Program ends here
复制代码


附件: 你需要登录才可以下载或查看附件。没有帐号?注册
2

查看全部评分

这是一个马甲

UID
1612747
帖子
13544
PB币
17136
贡献
0
技术
4501
活跃
19961

十周年 7周年庆典勋章 我是大学生!

发表于 2015-2-9 13:49:51 |显示全部楼层
是否也可以用在8/8.1上呢?

水稻

Rank: 7Rank: 7Rank: 7

UID
3526898
帖子
1299
PB币
594
贡献
0
技术
54
活跃
618
发表于 2015-4-23 17:47:36 |显示全部楼层
本帖最后由 acmilan_11 于 2015-4-23 17:49 编辑

win8.1已经修复了这个bug,所以用不着这个脚本

Rank: 9

UID
62100
帖子
3748
PB币
16814
贡献
0
技术
216
活跃
511

7周年庆典勋章 8周年庆典勋章

发表于 2016-9-11 13:07:37 |显示全部楼层
针对旧版本系统的?

Rank: 7Rank: 7Rank: 7

UID
552623
帖子
1750
PB币
3257
贡献
0
技术
0
活跃
651
发表于 2017-9-20 17:51:47 |显示全部楼层
解决了大问题
关闭

站长推荐

近期很多账号被盗,请加强密码保护!!
请注意保护自身账号安全
回顶部
Copyright (C) 2005-2017 pcbeta.com, All rights reserved
Powered by Discuz!  苏ICP备17027154号
请勿发布违反中华人民共和国法律法规的言论,会员观点不代表远景论坛官方立场。
远景在线 | 远景论坛 | 苹果论坛 | Win10论坛 | Win8论坛 | Win7论坛 | WP论坛 | Office论坛 | 电脑硬件 | 安卓软件