本文章基于 Matebook E Go 2022 性能版(8cx Gen 3) 编写。
关于此设备的评测等,请转到 https://blog.remiki.ren/archives/21/。本文章着重记述的是该设备的折腾方法 :)
此文章中的记述,大部分基于网上已有的研究,文末给出了大部分可考的参考文献。少部分可能来源已无从考证,欢迎补充。也有少部分是本人的原创研究。
只要博主还持有此设备(未出手),本文章计划持续更新。
update: 博主已出手本设备并换成 H3C Megabook。本文章将停止更新,仅提供事实性修正。
tl;dr:我买了这个设备,并且想重装系统,系统一定要纯,一定要清真,该怎么办?
备份好如下东西
- 分区表
- 所有原厂特殊分区的全部内容(
OneKey、WinPE、WinRE)
(OneKey中已经包含了原厂系统的恢复镜像,格式为wim) 适用于 WinPE 的驱动包:位于原厂系统
C:\Recovery\OEM\Customization\Product\Platform\Dirvers2PE\WinPEDriver目录中
有的教程会建议一并备份PlatformDriver,但我认为无所谓。因为 Windows Update 更新包完全可以替代其作用,并且是最新最热的。如果这些东西已经丢失了呢?
建议直接前往你当地的华为售后服务中心,要求抹除全盘,重装系统。如果设备已经过保,可能需要在“服务日”去,具体请咨询当地服务中心。总之华为是会给你重装的。
下载如下东西
- 你想装的原版操作系统的镜像。
强烈推荐:要么 Windows 11 稳定版 24H2/25H2,要么 Windows 11 IoT Enterprise LTSC 2024。
前者可以在微软官网下载,后者我推荐在 https://massgrave.dev/windows_ltsc_links 下载。
注意千万要下载 IoT 版本,IoT 版本相比不带 IoT 的版本多 5 年的更新维护! - DriverTools
https://consumer.huawei.com/cn/support/driver-list/driver-detail/ac08d3e8-408a-11ed-825a-fa163e0b5281/ - 从 Windows Update 里提取的驱动更新包
https://github.com/matebook-e-go/uup-drivers-sc8280xp/releases - Dism++
- 你想装的原版操作系统的镜像。
找一个其他的 Windows 设备和一个 U 盘:
- U 盘全盘格式化成一个 FAT32 分区
- 把你下载的镜像直接拷贝到 U 盘里面(
install.wim如果大于 4G 放不进去,拆成swm) boot.wim插入你备份的WinPEDriver驱动- 解包你下载的 Windows Update 驱动更新包里面所有的
cab文件,全部解压成单独的文件夹,扔进 U 盘里面 - 下一份普通的 Dism++,扔进 U 盘里面
- 从完成后的 U 盘启动你的设备
- 可选:用 diskpart 重新分区(推荐删除
OneKey分区节省空间,其他随意,也可以不删)
(如果你没有删除WinRE分区,删掉里面的winre.wim,这样新系统才会自动重新利用这个分区) - 启动 Dism++
- 释放你的
install.wim,并且重建好引导 - 进入驱动管理,添加你解压的所有驱动(直接选择那个文件夹)
- 拔 U 盘,重启进系统
- 安装 DriverTools,它会给你下一个驱动包
装里面的
Gaokun_THP_Software_1.0.1.39.exe(触摸屏驱动),其他的无所谓- 如果装了没反应,把他用 7-Zip 解包然后直接运行里面那个
GaoKun_HuaweiThpService_GEN3.exe
- 如果装了没反应,把他用 7-Zip 解包然后直接运行里面那个
- 如果想要更好的触摸屏体验,把驱动换成杂交驱动(见下文)
- 如果想要你的系统的 WinRE 能用原厂键盘操作,把
C:\System32\Recovery\winre.wim插入C:\Recovery\OEM\Customization\Product\Platform\Dirvers2PE\WinPEDriver的驱动。否则就只能外接 USB 键鼠操作,因为没驱动。(如果你的系统已经投入使用了,或许也要同时替换你的 WinRE 分区里面的winre.wim)。
当然,这办法肯定还可以再简化,这方法只是在我看来比较“清真”,称不上“方便”。或许之后我会单写一篇文章讲别的办法什么的——看我有没有空。
系统
该设备原厂预装的操作系统即为 Windows 11。我拿到的设备预装的是 22H2 版本。
关于原厂系统
原厂系统含有大量华为预装软件。除了(疑似 Nahimic 套壳的) Huawei Histen 音效服务为符合 DCH 的驱动所附带的 Arm64 守护进程以外,所有的预装软件和预装服务全部都是 x64 转译,严重拖慢性能。
在控制面板中,这些东西全部都可以卸载,故推荐全部卸载。除了:
HuaweiThpService:提供触摸屏和触控笔驱动。这是 x64 转译的纯 Win32 进程,但你没有办法。目前并没有它的替代方案。HuaweiPenAPP:提供触控笔的设置 UI。这是 x64 转译的用 Appx 打包的应用,可以在微软商店下载和更新。虽然如果你已经配对过触控笔,之后卸载此 App 不会影响其基本使用,但如果你持有触控笔,仍然建议你保留。
OEM 自定义目录
原厂系统的 OEM 自定义均存在于 C:\Recovery\OEM 目录中,建议对此文件夹留档备份,里面有着一些值得保留的文件,甚至留有一些疑似废案的文件。
顺带一提,所有 OEM 自定义项目都附带了 .bat 的安装脚本,且代码质量实属不堪入目。部分脚本依赖了老旧的 wmic 命令行程序,此组件在 24H2 遭到删除,也导致了一些脚本运行异常。
以下是一些值得注意的文件。
\Customization\Product\Platform\Dirvers2PE* 注:本人拼写无误,原文如此。疑似华为工程师打错了字。此目录中存放了此设备的所有驱动。其中有
PlatformDriver和WinPEDriver子目录。前者是插入进完整的 Windows 系统用的,可以驱动设备的所有功能(除了非 DCH 的部分以外)。
后者是插入进非完整的 Windows 系统用的,可以驱动设备的基本功能。在安装系统的时候,你可以将其插入进boot.wim。在系统安装之后,你可以将其插入进 WinRE。\Customization\Product\selective_suspend_setting\MCUMirror_Software_1.0.0.23.exe使用 7-Zip 解包后,发现此文件中包含了两个疑似废案或残留的软件。安装脚本中含有安装这两个软件的代码,但被注释了。
Gaokun_HuaweiKeyboardAPP.exe
Win32 独立版的键盘控制程序。不过,它除了查看键盘的连接状态和电量以外,似乎没有别的用处。(实际投入使用的版本中,此功能合并到了华为电脑管家中,并且和这个独立版基本差不多废物)
不过,里面有一个KeyboardService.dll没有删 pdb。有人借此反编译出了一些隐藏功能。
值得注意的是,此软件中展示的图示明显并非 Matebook E Go,但软件的安装程序却确实含有Gaokun字眼(Matebook E Go 的代号)。这可能表示此软件本是为其他设备编写。或许华为原本打算开发适用于 E Go 的版本,但中途放弃,并将功能合并进了电脑管家。Gaokun_HuaweiPenAPP.exe
Win32 独立版的触控笔设置UI。和实际投入使用的版本不同的是,实际投入使用的版本是 Appx 打包的,并且是通过 Microsoft Store 分发和更新的。
Windows Update 驱动更新支持
一个常见的误解是此设备没有通过 Windows Update 分发驱动程序更新,事实上并非如此。
只是,不同于大部分普通 x86 设备,华为将本设备所有的驱动合并到了一个更新包中,它在 Windows Update 中显示为 HUAWEI - System Hardware Update。
- 截至发稿,其最新版本标识为
4/26/2024 - 200.0.10.0——显然已一年以上未更新。这表明华为在维护此设备的驱动更新上并不上心。
安装此更新包中的驱动之后,设备的绝大部分功能都可以正常运作,在设备管理器中也不会显示任何叹号设备。除了触摸屏、触控笔等非标准的,非 DCH 的驱动。
提取的更新包可以在这里下载:https://github.com/matebook-e-go/uup-drivers-sc8280xp/releases。
你可以用 7-Zip 等软件把里面的 cab 文件批量解压,随后用 Dism++ 等软件插入进干净的系统里,就能完美驱动你的设备了。
华为官网 DriverTools
和其他华为及其相关联品牌生产的电脑一样,官方使用 DriverTools 分发驱动。这个软件可以在华为支持网站上下载。
- 尽管此名字可能会让人误以为这像是一个类似于“驱动精灵”的软件(就像联想做的“联想驱动管家”一样),事实上它做的工作几乎只是查询此设备的信息,然后从服务器下载所有匹配本设备的驱动安装程序而已。
- 至少在 E Go 上,它甚至不能自动安装驱动,需要你手动运行每一个安装程序。
对于 E Go,它只分发了少数驱动。
- 好消息是,它和 Windows Update 所提供的驱动包基本上是互补的。只需先导入 Windows Update 驱动包,然后安装
DriverTools所提供的其他驱动即可(主要是触摸屏)。
- 好消息是,它和 Windows Update 所提供的驱动包基本上是互补的。只需先导入 Windows Update 驱动包,然后安装
如果你有洁癖不太想使用这个软件,也没有问题。GitHub 上有一个这个程序的开源实现:https://github.com/matebook-e-go/driver-ota-client
下载的各个驱动逐个分析

GaokunGen2_QCAudio_1.0.1880.5.exe
这是 2022 LTE 版(基于 8cx Gen 2)用的音频驱动,和我们无关。Gaokun_8CX_BIOS_P02-02W-06F_2.16.exe
这是 BIOS 更新包,但其实此机器的 BIOS 从未更新过。一般不需要。Gaokun_8C_BIOS_P02-02W-05H_2.17.exe
这是 Gen 2 版的 BIOS 更新包,应该也从未更新过。和我们无关。Gaokun_MCUSoftware_1.0.0.40.exe
此安装包实际由2个部分组成,Gaokun_MCU_FW和MCUDriver。Gaokun_MCU_FW是一个固件更新包,更新的具体是什么设备暂不明确,似乎和蓝牙或无线连接相关。MCUDriver是一个驱动包,驱动 inf 文件名为USBDriver.inf。Windows Update 更新包里也已经包含此驱动,不过版本号是 2022 年,而此驱动包版本号为 2023 年。可以安装一下,以更新版本(尽管新版本更新了什么内容也尚不明确)。Gaokun_Raven_Keyboard_1.0.0.39.exe
这是原装键盘的固件更新包(不是原装键盘的驱动!只是固件更新!)。Gaokun_THP_Software_1.0.1.39.exe
这是唯一最重要的驱动!安装它之后触摸屏才能使用。
注意:这个驱动的安装脚本会使用wmic来判断设备 CPU 是 Gen2 还是 Gen3 来安装合适的触摸屏驱动。
然而wmic在 Windows 11 24H2 中被删除。导致安装脚本这一步会出错,实际不会安装任何触摸屏驱动。
如果你遇到了这个情况,用 7-Zip 解压这个程序,手动运行里面的GaoKun_HuaweiThpService_GEN3.exe。
运行之后应该就会成功安装上驱动,触摸屏也就工作正常了。Gaokun_WiFi_1.0.1760.22.exe
无线网卡驱动。Windows Update 更新包中已经包含了,不需要。
唯一最重要的驱动:触摸屏驱动 Huawei THP Software
它的工作很简单:驱动 SPI 协议下工作的触摸屏(来自华星光电&奇景光电)和触控笔。
不过,此驱动作为臭名昭著的 E Go 用户噩梦,相信大家已略有耳闻。
此驱动是纯纯的 x64 应用,需要长期通过转译运行。
- 解决方法:无解。
此驱动实际有多个版本,但版本号上无区别。
常见的几个版本:展示机提取版,官网版等。
网上有多人反馈官网版存在打字时缺字漏字,断触的情况。展示机提取版似乎无此问题,但展示机提取版似乎存在长期运行后内存泄漏的问题。博主在自己的设备上实测,此说法完全正确。不过,我并不确定其他版本的设备是否情况不同。- 解决方法:使用网友Heeko制作的杂交版驱动。
可以在 https://www.coolapk.com/feed/59455845 下载。
推荐:先安装官网驱动,官网驱动装好之后,停掉服务,文件替换成杂交驱动。
不过,具体效果请以实际测试为准。此杂交驱动在博主的设备上工作非常良好,但不确定其他设备如何。适合自己的设备的才是最好的。
- 解决方法:使用网友Heeko制作的杂交版驱动。
触控笔驱动
触控笔驱动分为三个部分。
- Gaokun_MCUSoftware
似乎提供的是基本连接的功能支持。上文提到,DriverTool会给你下载此驱动的安装包,只需直接安装即可。 - HuaweiThpService
也就是触摸屏驱动服务。触控笔事实上也是用这个服务支持的,不过需要用 PenAPP 配对之后才行。 - HuaweiPenAPP
提供触控笔的配对,托盘图标,设置界面。
需要在 Microsoft Store 下载安装:https://www.microsoft.com/store/productId/9PL42N8RRXJN
这个 App 建议在安装完毕上述所有驱动之后再安装。
如果你没有触控笔,运行之后也没有界面是正常现象。只需打开这个 App(你可以在任务管理器看到它的后台进程),然后把触控笔吸在平板边缘,就会弹出配对向导了。配对完成之后,App便会显示托盘图标,从托盘图标可以进入设置。
固件
该设备提供了一个较为标准的 ARM64 UEFI 固件,尽管不确定上游厂商为谁。如果你熟悉 UEFI 固件开发和分析,或许可以协助分析此固件。
值得注意的是:
- BIOS Setup 界面十分丑陋。界面的字体在 2K 的屏幕下非常小,难以看清。尽管英语字体是较为常见的点阵字体,中文字体竟然使用了楷体(即使使用宋体都比这好),使可读性雪上加霜。
此固件不算特别封闭——可以普通地设定外部设备引导,Secure Boot 也可以很简单地关闭
- 不像 Surface,它并没有在开机画面上刻意显示丑陋的红色解锁图标吓唬你。
但别高兴太早。此固件的 Bug 一点也不少。
- 此固件的 Chainloader 似乎存在问题,这导致
UEFI-NTFS,Ventoy等无法正常工作。 - 此固件似乎也无法读取 NTFS 分区,只能读取 FAT32 分区。这导致使用 Rufus 写入的镜像很可能无法在此固件上正常启动。
- 推荐的方式是手动将
install.wim拆分成 swm,然后放进 FAT32 的外部设备中,即可为此设备安装系统。
- 此固件的 Chainloader 似乎存在问题,这导致
和大部分 Windows On Arm 设备一样,该固件不支持 Windows To Go。
- 尝试启动 USB 设备中的完整 Windows 系统的话,会蓝屏 INACCESSIABLE BOOT DEVICE。这疑似是高通的驱动问题,而不是固件问题。具体我尚不清楚。
此固件有一些比较独特的行为。
F10 “一键还原”
- 在开机的时候按下 F10,固件会直接引导卷标为
WinPE的 FAT32 分区里的系统。默认情况下,这里面是一个华为特殊定制的 PE 系统,给用户提供一键还原原厂系统的功能,镜像为 wim 镜像,存储于OneKey分区。
- 在开机的时候按下 F10,固件会直接引导卷标为
引导到 “F10 一键还原” 或者从 USB 设备启动时,固件会枚举出一个 I2C HID 触摸屏。但普通启动的时候不会。
- 正常情况下,在普通启动的时候,
HuaweiThpService会负责以 SPI 驱动这个触摸屏。 - 事实上,此触摸屏在 I2C 运行的时候效果极其糟糕,随便画条线都会断触。
- 正常情况下,在普通启动的时候,
分区表
该设备原厂分区表如下所述。
| 序号 | 卷标 | 文件系统 | 大小 | 注释 | 分区类型 GUID |
|---|---|---|---|---|---|
| 1 | System | FAT32 | 300M | 普通的 ESP 分区 | C12A7328-F81F-11D2-BA4B-00A0C93EC93B |
| 2 | 16M | 普通的 MSR 分区 | E3C9E316-0B5C-4DB8-817D-F92DF00215AE | ||
| 3 | Windows | NTFS | 120G | Windows 系统安装分区 | EBD0A0A2-B9E5-4433-87C0-68B6B72699C7 |
| 4 | Data | NTFS | (整个硬盘) | 给用户存储数据的普通分区 | EBD0A0A2-B9E5-4433-87C0-68B6B72699C7 |
| 5 | WinPE | FAT32 | 1G | 华为专有的用来一键还原的PE系统 | de94bba4-06d1-4d40-a16a-bfd50179d6ac |
| 6 | OneKey | NTFS | 18G | 存储原厂镜像的分区,供一键还原使用 | de94bba4-06d1-4d40-a16a-bfd50179d6ac |
| 7 | WinRE | NTFS | 1G | 普通的WinRE分区 | de94bba4-06d1-4d40-a16a-bfd50179d6ac |
值得注意的是,WinPE、OneKey、WinRE其实都用了 WinRE 的分区类型 GUID。这是否符合有关的规范,我不甚清楚。
WinPE 分区的折腾
如上文所述,开机按 F10 的话,固件会引导 WinPE 分区内的系统。它并没有对里面的系统到底是什么做额外验证——这使得替换掉它成为了可能。
- 推荐:CNBYDJ PE for Arm
发布页:https://www.coolapk.com/feed/52585426
该PE的最大特点是完全支持x64软件转译,可以直接运行 DiskGenius 等软件,极大方便维护工作。
下载其 wim 文件之后,对其插入WinPEDriver中的驱动,然后把 wim 文件替换掉(WinPE):\sources\boot.wim即可。
这样,每次开机只需按下 F10 键,就可以使用一个功能完整的 PE 了。极其方便。
当然,如果你不喜欢使用第三方的 PE 工具,你也可以自行制作你的 PE,添加好驱动之后打包 boot.wim 替换进去即可。
参考文献
https://github.com/matebook-e-go
https://gist.github.com/dantmnf/5c393e03962ff113aad704b5cc795d45
https://www.coolapk.com/feed/59455845
https://www.coolapk.com/feed/52585426

本站文章除注明转载/出处外,均为本站原创或翻译,并在 知识共享署名 4.0 国际许可协议下提供。若有相关的疑问或质疑,请留下评论,或联系我。
我喜欢你
这是我见过最细节的解析了,感谢博主