防止在 Windows 7 上安装 Windows 10 nag 更新

防止在 Windows 7 上安装 Windows 10 nag 更新

在 Windows 10 闪电战期间,微软的一些傻瓜认为这将是好想法以 Windows 更新为幌子向 Windows 7 用户推送“烦人”的营销信息。更糟糕的是,他们花了几次尝试以使其正确,从而可能显示几个相关的补丁。

当我从头开始安装新的 Windows 7 SP1 计算机时(是的,这样做仍然有正当理由),最快和最简单有什么方法可以防止这些不必要的“更新”从一开始就被应用呢?

答案1

我发现了一些手动步骤这里这里,并尝试使用下面这个肮脏又不那么快的脚本来自动化它们(基于)。但是它需要半个多小时才能运行,因此我将这个问题保留下来,希望有人能提出更方便的解决方案。

Dim msg
msg = "Searching for and hiding six Windows Updates related to Windows 10 nagging." & vbCrLf
msg = msg & "Be patient; this may take a LONG time during which nothing appears to happen."
msg = msg & " You can tell the script is still running by using Task Manager and looking for wscript.exe"
Wscript.echo msg

Dim hideupdates(5)
hideupdates(0) = "KB3035583"
hideupdates(1) = "KB2952664"
hideupdates(2) = "KB2976978"
hideupdates(3) = "KB3021917"
hideupdates(4) = "KB3044374"
hideupdates(5) = "KB2990214"

Dim status(5)
For i = 0 to UBound(status)
  status(i) = "notfound"
Next

set updateSession = createObject("Microsoft.Update.Session")
set updateSearcher = updateSession.CreateupdateSearcher()

Set searchResult = updateSearcher.Search("IsInstalled=0 and Type='Software'")

dim results
Set results = searchResult.Updates
For i = 0 To results.Count-1
  set update = results.Item(i)
  For j = LBound(hideupdates) To UBound(hideupdates)
    if instr(1, update.Title, hideupdates(j), vbTextCompare) > 0 then
      if update.IsHidden then
        status(j) = "alreadyhidden"
      else
        update.IsHidden = True
        status(j) = "hidden"
      end if
    end if
  Next
Next

Dim alreadyhidden
Dim hidden
Dim notfound

for i = 0 to UBound(status)
  Select Case status(i)
    Case "alreadyhidden"
      alreadyhidden = alreadyhidden & hideupdates(i) & vbCrLf
    Case "notfound"
      notfound = notfound & hideupdates(i) & vbCrLf
    Case "hidden"
      hidden = hidden & hideupdates(i) & vbCrLf
  End Select
next
msg = "Hid these Windows 10 related updates:" & vbCrLf
msg = msg & hidden & vbCrLf
msg = msg & "These ones were already hidden:" & vbCrLf
msg = msg & alreadyhidden & vbCrLf
msg = msg & "These ones were not found on this machine:" & vbCrLf
msg = msg & notfound

Wscript.echo msg

5]

答案2

引述 rkager“什么是最快捷、最简单的方法,可以从一开始就防止这些不必要的“更新”被应用?”如果你正在进行全新安装

“在 Windows 更新设置中取消选中推荐更新(可选)。”

上面写着“像我收到重要更新一样给我推荐的更新”。之后,您可以单独检查您想要安装的推荐更新(如果有)。我不建议安装 MS 给出的每个推荐更新。最近它造成的混乱多于好处。

相关内容