告诉 Windows 7 停止尝试升级到 Windows 10?

告诉 Windows 7 停止尝试升级到 Windows 10?

运行 Windows 7 家庭版的客户一定已经保留或同意升级 Windows 10,因为我每天都会看到升级安装失败的消息。

该客户尚未准备好使用 Windows 10,因此安装失败是正常的。但如何让它停止尝试?一旦授予升级权限,我该如何撤销该权限以使其停止尝试升级?

我运行了 Windows 更新疑难解答程序来清除更新,并卸载并隐藏了 KB3035583,但它仍在尝试升级。在任务管理器中,没有 GWX.EXE 进程。

事件日志失败消息:

Log Name:      System
Source:        Microsoft-Windows-WindowsUpdateClient
Date:          8/5/2015 1:28:58 AM
Event ID:      20
Task Category: Windows Update Agent
Level:         Error
Keywords:      Failure,Installation
User:          SYSTEM
Description:   Installation Failure: Windows failed to install the following update with 
               error 0x80240020: Upgrade to Windows 10 Home.

WindowsUpdate.log 中的相关行:

2015-08-05  01:28:57:885    1068    6698    Agent   *************
2015-08-05  01:28:57:885    1068    6698    Agent   ** START **  Agent: Installing updates [CallerId = AutomaticUpdates]
2015-08-05  01:28:57:885    1068    6698    Agent   *********
2015-08-05  01:28:57:885    1068    6698    Agent     * Updates to install = 1
2015-08-05  01:28:57:885    1068    6698    Agent     *   Title = Upgrade to Windows 10 Home
2015-08-05  01:28:57:885    1068    6698    Agent     *   UpdateId = {27E79986-1150-4342-BDD2-76DF82C768D5}.201
2015-08-05  01:28:57:885    1068    6698    Agent     *     Bundles 1 updates:
2015-08-05  01:28:57:885    1068    6698    Agent     *       {FCD6621E-F5D4-4A95-AD43-28F0C58DD2F3}.201
2015-08-05  01:28:58:181    1068    6698    DnldMgr Preparing update for install, updateId = {FCD6621E-F5D4-4A95-AD43-28F0C58DD2F3}.201.
2015-08-05  01:28:58:181    27280   6f84    Misc    ===========  Logging initialized (build: 7.6.7601.18917, tz: -0700)  ===========
2015-08-05  01:28:58:181    27280   6f84    Misc      = Process: C:\Windows\system32\wuauclt.exe
2015-08-05  01:28:58:181    27280   6f84    Misc      = Module: C:\Windows\system32\wuaueng.dll
2015-08-05  01:28:58:181    27280   6f84    Handler :::::::::::::
2015-08-05  01:28:58:181    27280   6f84    Handler :: START ::  Handler: Windows Setup Install
2015-08-05  01:28:58:181    27280   6f84    Handler :::::::::
2015-08-05  01:28:58:181    27280   6f84    Handler   : Updates to install = 1
2015-08-05  01:28:58:181    1068    5ecc    AU  >>##  RESUMED  ## AU: Installing update [UpdateId = {27E79986-1150-4342-BDD2-76DF82C768D5}]
2015-08-05  01:28:58:181    1068    5ecc    AU    # WARNING: Install failed, error = 0x80240020 / 0x00000000
2015-08-05  01:28:58:181    27280   6f84    Handler   : WARNING: Exit code = 0x80240020
2015-08-05  01:28:58:181    1068    5ecc    AU  Write OSUpgradeState =14 with OSUpgradephase =2
2015-08-05  01:28:58:181    27280   6f84    Handler :::::::::
2015-08-05  01:28:58:181    27280   6f84    Handler ::  END  ::  Handler: Windows Setup Install
2015-08-05  01:28:58:181    27280   6f84    Handler :::::::::::::

答案1

进一步的谷歌搜索让我找到了一个注册表项,它看起来好像控制升级过程。

尝试升级的机器具有以下值:

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate\OSUpgrade]
"KickoffDownload"=dword:00000001
"KickoffSource"=dword:00000000

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate\OSUpgrade\State]
"OSUpgradeState"=dword:0000000e
"OSUpgradeStateTimeStamp"="2015-08-04 15:59:55"
"OSUpgradePhase"=dword:00000002

另一台 Windows 7 机器,我已删除 KB3035583Windows 10 已发布(并因此成功阻止升级),具有以下值:

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate\OSUpgrade]

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate\OSUpgrade\State]
"OSUpgradeState"=dword:00000001
"OSUpgradeStateTimeStamp"="2015-07-28 10:09:55"

我更新了“升级”机器上的注册表以匹配“被阻止”机器的注册表,然后重新启动了机器。

此外,感谢@Ramhound 的评论,我发现了一个 $Windows.~BT 隐藏文件夹,里面有 5.1GB 的内容。我运行了磁盘清理并删除了“临时 Windows 安装文件”。该文件夹现在不见了。

我们将看看这是否能成功阻止进一步的升级。

2015 年 8 月 7 日更新

机器已停止尝试升级到 Windows 10,因此注册表更改一定有效。我两天前设置的值没有改变。

答案2

现在很容易永远不会 10,一款用于阻止 Windows 10 升级的便携式实用程序。

相关内容