升级Win10 16193提示错误代码0xc0e90002致无法重装系统详细解教程

注:方法总结写在了最后,是探索过程。

升级了Windows 10开发者预览版,Build版本号16193。升级之后由于重重原因,打算回退Windows 10 Creator正式版。进行系统恢复时发现,原可以引导系统的U盘,出现了错误。

具体的错误现象:停滞在windows Boot Manager界面,错误代码:0xc0e90002。查询宏映射得知0xc0e90002被映射为:STATUS_SYSTEM_INTEGRITY_POLICY_VIOLATION。看来是权限的问题。于是,关闭了secure boot,还是不行。

我想,是不是这个版本的windows 10修改了UEFI的RAM代码,导致只能认16193以及更高的版本。我的电脑上正好有Fedora 26 Alpha测试版,调整好启动项,Fedora顺利开机。于是,排除了只认windows的可能。进而想到,应该不是修改了UEFI的RAM代码。(仅仅是应该,不确定是不是只识别16193更高版本)那么问题来了,怎么能把这个系统重装……

Dism++这个软件开发团队设计了一个功能,在windows RE中运行Dism++。Windows RE是一个Windows应急恢复环境。

图1 RE中运行Dism++选项

在Windows RE中果然恢复成功。(恢复的是我以前备份过的Creator正式版系统)。出于好奇,我又试了一下U盘启动,还是0xc0e90002。

是不是应该更新一下U盘中的Windows PE。一天过去了,无论如何(U+,量产)都不能正确引导。

图2 Windows PE

我的电脑只有UEFI没有BIOS,所以必须把U盘制作成FAT32格式,然而这个格式又不能放大于4G的文件,所以……很头疼。先不管格式了,全盘格式成FAT32.

用UltraISO这个软件进行U+启动盘制作。所有的都试过了。仍然不好使。PE已经用到了Creator更新的PE。

上网搜了一个制作U+的PE。微PE。这个PE在知乎上评价很高,在此也推荐给大家。

图3 WEPE网站

图4安装界面

在安装界面可以看到,直接安装到硬盘是可以的。为了排除U盘的干扰,这里直接安装到了硬盘。没有时间点击完成安装,直接操作Win+X——U——R(意思是重启)。屏幕上:Surface——进度条——选择一个操作系统——“winPE”——【重启】——Surface——进度条——Windows BOOT Management——0xc0e90002,再次GG。

既然是权限的问题,那么就跟证书有关。进入EFI分区,看到若干证书,修改时间是升级Insider的时间,还有BCD文件,修改时间就是安装微PE工具箱的时间。由于新版windows 10 Creator(Build版本号1703)没办法正常映射EFI分区。用磁盘工具DiskGenius强制映射一下,提示系统错误,没有指定权限……是不是权限不足?管理员身份运行,“系统错误”。于是用起了windows自带的diskpart。

先看看图,和图下的文字说明,没什么可以打字的。

图5 diskpart

图6 DiskPart分配盘符

图7表面上看起来很好的E盘

图8,图9迷惑性的可以取得权限

图10傻眼了吧,根本没有安全选项卡

图11一键添加超级管理员权限的代码

图12驱动器上根本没有取得管理员权限选项

想到System权限吗?Windows XP及以前的时代,可以直接System权限运行个explorer.exe,方法大家上网搜吧。Windows Vista后,不能像XP那么简单获取System权限了。Windows 7以前(windows 8 8.1没有测试过)可以通过创建服务的方式来取得System权限。代码还是给你们放出来。

图13 Win7 System权限获取代码

图14 Microsoft :休想随便取得System权限

糟糕,可是我还有一个最后的办法取得System权限。替换讲述人(Narrator.exe)。

图15讲述人的原型

图16取得Narrator的超级管理员权限

图17分配修改权限

图18 19替换成功的Narrator.exe

图20成功取得system权限

图21休想在System权限运行explorer.exe

图22终于可以了(这个是现在正常的样子,故障的时候哪里想得到截图)

用C:\Windows\Boot替换EFI分区里面的关键文件

替换完成后,心惊胆战的重启了一下,进入系统了,长舒一口气。

测试PE,仍然0xc0e90002。

尝试bcdboot

图23想用bcdboot修复EFI分区

图24正常状态下可以修复的EFI分区(故障的时候这个直接提示权限不足)

图25 System权限下也不能修复

真正的解决方案——mountvol

图26 mountvol界面

看了一眼说明之后,mountvol H: /s

奇迹出现了,EFI分区可以进去了,我把它备份了一下,彻底格式化(因为毕竟要返厂了,无所谓了),在一连串bcdboot c:\windows /l zh-cn /s h: /f UEFI

重启

果然,不能进系统了。

抱着碰碰运气的心里关闭了“安全启动”(secure boot)。

Surface——进度条——选择一个操作系统——Windows 10——正在寻找你——欢迎

哇!

重启——Surface——进度条——选择一个操作系统——Windows PE——重启——Surface——Windows Boot Management——Loading Files——进度条——Windows PE正在启动

!!!

插入以前做好的U盘,Surface——Windows Boot Management——Loading Files——进度条——Windows PE正在启动

尘埃落定。

总结一下:步骤

1.用mountvol这个微软自带工具,将EFI分区映射为本地磁盘。

在以管理员身份运行的命令提示符窗口输入mountvol H: /s

H就是待映射的盘符,这里举个例子为H盘。

给出mountvol官方文档:

Mountvol创建、删除或列出卷装入点。

用法

MOUNTVOL [drive:]path VolumeName

MOUNTVOL [drive:]path /D

MOUNTVOL [drive:]path /L

MOUNTVOL [drive:]path /P

MOUNTVOL /R

MOUNTVOL /N

MOUNTVOL /E

MOUNTVOL drive: /S

path       指定装入点将驻留的现有NTFS目录。

VolumeName 指定装入点的目标的卷名称。

/D         从指定的目录中删除卷装入点。

/L         列出指定目录的已装入的卷名称。

/P         从指定目录删除卷装入点,卸下此卷并使此卷无法装入。您可以创建

一个卷来再次使此卷可以装入。

/R         删除不在系统中的、卷的装入点目录和注册表设置。

/N         禁用新卷的自动装入。

/E         再次启用新卷的自动装入。

/S         将EFI系统分区装载到提供的驱动器。

2.用DiskGenius格式化EFI分区,格式FAT32

3.在以管理员身份运行的命令提示符窗口输入bcdboot c:\windows /l zh-cn /s H: /f UEFI

C:\Windows要替换成你安装的Windows所在磁盘

H替换成你映射EFI的盘符

给出bcdboot官方文档

Bcdboot - Bcd启动文件创建和修复工具。

bcdboot.exe命令行工具用于将关键启动文件复制到系统分区以及创建新的系统BCD存储

bcdboot[/l] [/s] [/v]

[/m [{OS Loader ID}]]

source           指定windows系统根目录的位置。

/l               指定在初始化BCD存储时使用的可选区域设置参数。

默认值为“简体中文”。

/s               指定一个可选的卷号参数,该参数用于指定要将启动环境文件复到

的目标系统分区。默认值为固件标识的系统分区。

/v               启用详细模式。

/m               如果提供了操作系统加载器GUID,则此选项可以将给定的加载器

对象与系统模板合并起来,以产生可启动条目。否则,只合并全局

对象。

示例:    bcdboot c:\windows /l en-us

bcdboot c:\windows /s h:

bcdboot c:\windows /m {d58d10c6-df53-11dc-878f-00064f4f4e08}

4.重启计算机

(0)

相关推荐