后悔药, 无需 windows.old, 不丢软件数据, 任意回退(Insider Dev -> 稳定版/ Win11 -> Win10)

2021-11-15 20:14:26 +08:00
 zx900930

参考文章

https://bbs.pcbeta.com/viewthread-1904414-1-1.html

感谢原作者 Windows_Air 分享的经验, 让我从三天两头升级蓝屏的 dev 版跳车回了稳定版. 原文的操作步骤写的对没用过 ida 的萌新可能有点难懂.这里详细说一下

先准备

  1. 想降级回去的 iso 镜像
  2. ida 免费版就行, 有 pro 的可以用 pro
  3. hex 编辑器, 推荐免费的HxD Hex Editor

操作步骤

  1. 解压 iso 镜像到一个文件夹
  2. 用 ida 打开里面的 /sources/setupcompat.dll
  3. 菜单栏 Search -> Text (快捷键 Alt+T) 输入 ConX::Setup::Common::CWindowsVersion::IsLaterThan 搜索.
  4. 你可以看到类似下面的界面
  5. 滚到最底下, 可以看到有个标签只有一行简单的返回指令MOV eax, 1告诉安装程序你的 windows 版本比安装程序新无法保留数据升级安装, 我们把这个 1 改成 0 就好了
  6. 现在我们需要知道这个指令的位置, 点击这个标签然后在菜单栏 Edit -> Patch Program -> Change byte... ,, 上图显示的 offset 就是这个指令的地址了, 或者那个标签里也直接写了 loc_18003BFFE,最后 5 位数 3BFFE 就是我们需要的地址
  7. 打开 Hex 编辑器跳转到上一步找到的 3BFFE 这个地址(HxD 快捷键 Alt+G,注意这个地址是会变的, 得自己去找), 把B8 01 改成 B8 00, 保存退出
  8. 直接运行解压文件夹里的 setup.exe 安装 windows 就行了, 默认是保留全部应用和数据的"升级"安装.

后话: 测试可以从 Win11 各个 Insider Preview 或稳定版互相转, 也可以 Win11 降 Win10, 需要注意的是不要降回 Win10 19041 之前的版本, 之前的版本的安装程序很不稳定. Win11 各版本之间互转基本没有 bug, Win11 降 Win10 会有一些应用商店的 bug 可以参考原文解决.

10176 次点击
所在节点    Windows
41 条回复
ysc3839
2021-11-15 20:33:54 +08:00
IDA 不是自带 patch 功能吗?还是说免费版不支持?
zx900930
2021-11-15 20:49:23 +08:00
@ysc3839 免费版 patch 提示失败, 不是权限的问题, 我也不知道毛病出在哪
ysc3839
2021-11-15 20:50:18 +08:00
@zx900930 截图看看?
zx900930
2021-11-15 20:56:00 +08:00
@ysc3839 绝了, 我又试了一次居然成功了
Creating backup...done!
Applied 1/1 patch(es)
之前降级前试了好几次 backup 和 apply patch 全是 failed, 可能是不兼容最新的 dev 版本
Tink
2021-11-15 21:06:12 +08:00
66
yukiww233
2021-11-15 21:12:22 +08:00
感谢楼主,正在从 11dev 降回正式..
主要是频繁更新的时候经常自动更新 nvidia 的驱动导致显卡出现一些奇奇怪怪的问题 就很烦
zx900930
2021-11-15 21:21:45 +08:00
@yukiww233 我是更新经常蓝屏报错 0x8007042b 之类的, 要重试很多次才能成功, 频繁更新比较伤固态, 想想还是退回稳定版.
flynaj
2021-11-15 21:51:58 +08:00
易数一键还原 ,可以热备系统,备份一下,几分钟就给你还原好了。
zx900930
2021-11-15 22:08:41 +08:00
@flynaj "升级"安装和备份还原不是一个概念, 备份还原没法实现保留用户数据和软件的大版本更迭, 只能原来是什么版本的系统还原后还是什么系统. 而且你要是有旧版本的备份或者有 windows.old 根本就不会点进来看这个对不对?
lzgshsj
2021-11-15 23:03:57 +08:00
最近自动更新全失败了,安装错误 0x80071a91 ,检查 C 盘也修复不了,麻了
Buges
2021-11-15 23:24:16 +08:00
可以试试 https://cutter.re/ 开源免费,界面简单。跟 ida 一样找到符号直接改汇编就可以。
zx900930
2021-11-15 23:40:49 +08:00
@lzgshsj dev 是这样的, 我就是受不了更新老是蓝屏失败才回稳定版的
kebamt
2021-11-15 23:59:47 +08:00
@zx900930 我因为稳定版有个 bug ,解决不了,设置更新到最新 dev 版看看有没有修复,结果升级到 dev 后发现 bug 依旧(不愧是微软😅),再去设置里发现无法换更新频道,还好没有清理掉之前 Windows.old,感觉回滚稳定版了
wwbfred
2021-11-16 00:38:49 +08:00
不升级,不吃药😅
ch2
2021-11-16 00:54:54 +08:00
能搞个脚本不
mywaiting
2021-11-16 08:46:57 +08:00
IDA 都出来了,这不符合伸手党的原则~(逃~)
wooke
2021-11-16 09:01:06 +08:00
我运气好比较好,升级 dev 后还没有遇到过蓝屏。
shellj
2021-11-16 09:06:02 +08:00
... 上周六刚从 Dev 重装回稳定版
2i2Re2PLMaDnghL
2021-11-16 09:11:01 +08:00
意思是直接把判断是否能『升级安装』的 flag 给覆盖了?采用『升级安装』的方式去降级,应该会在偶然的情况下出现不可预知的问题吧……吗?
demo
2021-11-16 09:48:23 +08:00
昨天在 reddit 看到这个,今天就在 V2EX 出现了。。。
https://www.reddit.com/r/Windows11/comments/qtw8fq/finally_find_a_way_to_upgrade_windows_from/

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/815618

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX