写点什么

5 种快速解决 Windows 10 升级问题的工具

  • 2020-03-30
  • 本文字数:3060 字

    阅读完需:约 10 分钟

5种快速解决Windows 10升级问题的工具


本文经原作者授权,由 InfoQ 中文站翻译并分享。


大多数 Windows 10 升级和功能更新操作都是能顺利完成的。但如果你不幸遇到了问题,尤其是在较老的 PC 上出现问题时,请使用本文列举的这些工具和技术来找出原因。


随着全球范围内越来越多的人们开始在家中工作,我发现人们重新点燃了升级到 Windows 10 系统的兴趣。或许你家那台放在杂物间落灰的旧 PC 就能很好地运行 Windows 10 呢,并且来自我许多读者的报告也证实,微软依旧在允许用户从 Windows 7 和 Windows 8/8.1 免费升级到 Windows 10 版本。(相关细节,请参阅“教你继续免费获得Windows 10升级”


但也有一小部分读者报告了他们的升级过程存在一些问题,通常是因为新系统与现有的软件或硬件存在兼容性故障所致。在这篇文章中,我具体介绍了一些可识别和解决阻碍升级过程的问题的工具和技术。这些步骤还可以帮助你诊断在已运行 Windows 10 的 PC 上安装功能更新时出现的问题。


请注意,其中一些步骤需要中级到高级的技术技能。如果你不理解某些细节或不确定该如何解释对应的结果,请咨询拥有 IT 经验的朋友或同事。(他们可以使用远程支持工具来帮助你,我在「“远程支持要点:你现在可以采取4个步骤来保持与亲朋好友的联络”」中做了具体介绍)。

检查新版 BIOS

对于在 Windows 10 发行之前设计和制造的老式 PC 来说,这一步骤尤其重要。在老式 PC 上,BIOS 负责启动 PC 并管理与基本系统设备(如键盘和磁盘控制器)的连接。早在 2015 年和 2016 年,许多 PC 制造商就针对其 BIOS 代码发布了更新,这些更新专门用来解决 Windows 10 升级问题,有时只要升级 BIOS 就足以解决升级失败的故障了。


要查找你的系统的详细信息,请按 Windows 键+R 打开“运行”框,键入 msinfo32,然后按 Enter。这将打开系统信息应用。在“系统摘要”选项卡上,找到标有“BIOS 版本/日期”的项目,如下所示。



如果 BIOS 日期在 2016 年之前,请查看 PC 制造商是否提供了可用的更新。


如果 BIOS 日期早于 2016 年,则你应该检查计算机制造商的网站,查看是否有更新版本。在 Windows 10 于 2015 年中期发布时,甚至某些超过支持期限的旧系统也收到了新的 BIOS 代码。

执行基本的故障排除步骤

可以将最常见的升级错误归结为几种基本原因:软件不兼容、与存储有关的问题以及安装向导中的错误。即使你不知道升级问题的确切原因,你也可以通过一些简单的故障排除措施来解决它。


首先,暂时卸载所有不需要的软件。特别要注意的是底层系统工具,例如防病毒软件和磁盘管理工具等。对于防病毒软件,可能需要从开发人员那里下载工具才能完全删除程序。


接下来断开所有非必需的设备,尤其是外部存储设备。


最后请跳过升级向导,这个向导有时会失败,因为它无法请求你的权限来解决错误。取而代之的是直接从下载的安装文件中运行 Windows 安装程序。为此请使用 Windows 10 Media Creation Tool,将必要的文件下载到 USB 驱动器上。你还可以使用这个选项将安装程序另存为 ISO 文件,然后使用另一个驱动器号将其挂载为一个虚拟驱动器。(关于如何下载这些文件的说明,以及关于挂载 ISO 文件的说明,请参阅“教你继续免费获得 Windows10 升级。”)


使用 Windows 资源管理器或文件资源管理器打开外部驱动器或虚拟驱动器,然后双击安装程序以开始升级。

查找已知问题


使用这个导航窗口可以快速检查特定 Windows 10 版本的已知问题。


在花费大量时间尝试升级旧 PC 或安装新的功能更新之前,请在微软的 Windows 10 版本信息仪表板(https://docs.microsoft.com/en-us/windows/release-information/)上查看已知问题的列表。展开左侧的各个条目,可以查看 Windows 10 支持版本的已知和已解决问题的列表。


已知问题最有可能在新的功能更新刚发布后的头几个月出现。与软件和硬件的不兼容故障可能导致微软在部分有特定配置的系统中启用临时的兼容性阻止措施。


你可以更新或卸载不兼容的程序来绕开这类阻止措施,或者你也可以将更新操作推迟到相关问题被解决为止。

在 Windows 安装程序中运行内置的兼容性检查器

尽管最近的功能更新在现代硬件上的安装速度通常是很快的,但某些升级可能还是需要很长时间。如果你花费了一两个小时时间执行升级操作,结果却发现系统已回滚了更新并还原了以前的 Windows 版本,还没有对出现的问题给出任何说明,这肯定会令人抓狂。


如果你希望跳过这一过程,则可以在运行 Windows 安装程序时开启对应的开关,要求它先执行兼容性检查并返回相应的结果。为此,你需要访问完整的 Windows 安装文件,如上一节中所述。


打开文件资源管理器(Windows 7 中是 Windows 资源管理器),并记下分配给 Windows 安装文件的外部或虚拟驱动器的驱动器号。


接下来打开命令提示符窗口(最简单的方法是按 Windows 键+R 打开“运行”对话框),然后键入 cmd.exe,随后按 Ctrl+Shift+Enter 以管理员身份运行它。在命令提示符下键入以下命令,用安装程序文件所在的驱动器号代替 d:。输入每一行后按 Enter。


d:
Setup /Compat ScanOnly
复制代码


就像执行升级步骤一样按照设置屏幕继续操作。进入最终页面时单击“安装”。程序应在此时结束而不是开始升级。完成后,它将一些信息写入一个名为 BlueBox.log 的文件,你可以在 C:\Windows\Logs\MoSetup 文件夹中找到这个文件。


双击该文件以在记事本中打开它,然后滚动到底部并查找最终的错误代码。如果看到 0xC1900210,那就没问题了。这意味着没有兼容性阻止问题。


如果你看到的是另一个错误代码,则需要找出它的含义。下面是四个常见错误,具体含义是:


  • 发现兼容性问题(硬阻止):0xC1900208

  • 迁移选项(自动升级)不可用(可能是因为错误的 SKU 或架构)0xC1900204

  • 不符合 Windows10 的系统要求:0xC1900200

  • 可用磁盘空间不足:0xC190020E


你可能还会遇到其他不太常见的错误代码。有关这些代码含义的细节,请参阅这里的微软支持文档:解决Windows10升级错误:IT专业人员参阅的技术信息


对于某个兼容性问题,你应该能看到有关它的更多详细信息,以及指向如何解决此问题的说明的链接。

安装失败后,请检查安装日志

如果你尝试升级到 Windows 10 却失败了,那么你可能会想再尝试一次。这就是最糊涂的行为:同样的坑再跳一次,还期待会有不同的结果。


至于比较合理的选项,我建议使用微软提供的官方诊断实用工具 SetupDiag,看看你是否可以找出失败的原因。这款工具使用了一组规则(到 2020 年初,当前版本中有 60 多个规则),这些规则与影响 Windows 10 升级的已知问题相匹配。它可以在 Windows 7、Windows 8.x 和 Windows 10 上运行,不过目标操作系统必须是 Windows 10,并且你可能需要安装.NET Framework 4.6 才能正常运行。SetupDiag 会检查 Windows 每次尝试升级时创建的大量日志文件,然后为你报告最可能的失败原因。


Windows 10 升级或功能更新操作失败时,请转到这个页面(https://docs.microsoft.com/en-us/windows/deployment/upgrade/setupdiag)并下载 SetupDiag.exe。使该页面保持打开状态,以便你可以根据需要参考其说明。它还包含用于解释错误代码的详细信息的链接。


将 SetupDiag.exe 复制到升级失败的 PC 上的文件夹中,然后双击可执行文件。该程序的当前版本是很聪明的,可以自动查找保存日志文件的常用位置,因此你无需为该工具指定任何命令行选项。


SetupDiag 的输出是纯文本文件,与程序文件保存在同一文件夹中。你可以在任何文本编辑器(包括记事本)中打开结果文件,以检查其输出并确定下一步的操作。


原文链接:


https://www.zdnet.com/article/windows-10-upgrade-failed-use-these-5-tools-to-find-the-problem-and-fix-it-fast/


2020-03-30 14:272470

评论

发布
暂无评论
发现更多内容

浅谈C#字符串构建利器StringBuilder

yi念之间

C# StringBuilder

《SQL必知必会》读书笔记

懒时小窝

数据库 sql

OpenHarmony应用开发之全局配置参数解析

Anna

OpenHarmony

Android C++系列:函数知识知多少

轻口味

c++ android 4月月更

怎么写帮助文档?产品人看过来

小炮

帮助中心

API 分页探讨:offset 来分页真的有效率吗?

爱好编程进阶

Java 程序员 后端开发

OpenHarmony技术日探讨教育发展,聚焦开源人才培养

OpenHarmony开发者

OpenHarmony

谈谈对 Database Plus 认识与畅想

SphereEx

Apache 数据库 SphereEx ShaardingSphere

编码的底层原理

程序员猪小哼

java面试 底层原理 死磕 Java 基础

OpenHarmony 设备开发环境搭建 / 源码获取 / 编译 / 烧录

Anna

OpenHarmony

我推荐的Flutter项目结构

坚果

4月月更

2020年Java面试复盘,收获Offer,金三银四程序员面试精装版pdf,分享给跳槽面试的程序员

爱好编程进阶

Java 程序员 后端开发

新冠疫情防控背后有哪些鲜为人知的技术?

DS小龙哥

4月月更

OpenHarmony啃论文计划-elf文件格式介绍

Anna

OpenHarmony

关于「应变力」这个超能力|ONES 人物

万事ONES

管理

「质量三人行之不止测试」直播问题解答

BY林子

软件测试 职业发展 质量赋能 测试转型 质量内建

金蝶云·苍穹峰会震撼来袭

金蝶云·苍穹

【直播回顾】OpenHarmony知识赋能第五期第二课——成为社区达人

OpenHarmony开发者

OpenHarmony 社区贡献

了解HTTP的基本历史及知识

CRMEB

web前端培训懒加载对 Web 性能的影响

@零度

前端开发 懒加载

java培训Stream遍历树形结构案例分享

@零度

stream JAVA开发

API 文档构建工具 - Swagger2简单应用

爱好编程进阶

Java 程序员 后端开发

深度剖析OpenHarmony应用/服务的逻辑结构

Anna

OpenHarmony

为什么boolean存储需要32bit?

程序员猪小哼

java基础 底层原理

架构实战营作业四

热猫

2hutool源码分析:DateUtil(时间工具类)-常用的时间类型Date,DateTime

爱好编程进阶

Java 程序员 后端开发

浅谈C#可变参数params

yi念之间

C# params

浅谈云上攻防——Etcd风险剖析

腾讯安全云鼎实验室

安全攻防 网络安全

大数据培训Hive架构思想与设计原理

@零度

hive 大数据开发

13 高可用的服务

爱好编程进阶

Java 程序员 后端开发

密码基础设施提供商三未信安加入龙蜥社区

OpenAnolis小助手

合作伙伴 龙蜥社区 CLA 三未信安 密码基础设施

5种快速解决Windows 10升级问题的工具_语言 & 开发_Ed Bott_InfoQ精选文章