无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 11449|回复: 12
打印 上一主题 下一主题

[教程] win 7 移植 wimboot 补充

  [复制链接]
跳转到指定楼层
1#
发表于 2014-7-15 17:32:27 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
关于将 wimboot 移植到 windows 7 上,在 http://bbs.wuyou.net/forum.php?mod=viewthread&tid=327419 已有详细讨论
对于不成功的,可看此贴
注:如果 windows 7 是32位的,需要32位的 winpe 5.1 或 win 8.1 update,64位同理。

生成可 wimboot 的 wim 文件的唯一必要条件:原镜像或系统文件必须存在 \Windows\System32\WimBootCompress.ini,可以用win8.1update自带的,也可以用 http://bbs.wuyou.net/forum.php?mod=viewthread&tid=327419 修改的。

获得可 wimboot 的 wim(二选一):(在 winpe 5.1 或 win 8.1 update 下)
1.可以用 dism /Mount-Image 挂载 win 7 的 wim 加入 WimBootCompress.ini 并用 dism /Unmount-Image /Commit 保存,用 dism /Export-Image /WIMBoot 导出镜像。
2.使用 dism /Capture-Image /WIMBoot 捕獲包含 WimBootCompress.ini 的 win7 系统文件

生成指针文件:(在 winpe 5.1 或 win 8.1 update 下)
使用 dism /Apply-Image /WIMBoot 将得到的 wim 映射到普通分区或虚拟磁盘分区,用 bcdboot 建立引导(此处无需使用 win 8.1 的 bootmgr)。
将以下文件变成实体文件

\Windows\Fonts\vgaoem.fon
\Windows\Fonts\vgasys.fon
\Windows\inf\disk.inf
\Windows\inf\errata.inf
\Windows\inf\hal.inf
\Windows\inf\usb.inf
\Windows\inf\usbport.inf
\Windows\inf\usbstor.inf
\Windows\inf\volsnap.inf
\Windows\inf\volume.inf
\Windows\System32\apisetschema.dll
\Windows\System32\BOOTVID.DLL
\Windows\System32\C_936.NLS
\Windows\System32\ci.dll
\Windows\System32\clfs.sys
\Windows\System32\hal.dll
\Windows\System32\kdcom.dll
\Windows\System32\l_intl.nls
\Windows\System32\mcupdate_AuthenticAMD.dll
\Windows\System32\mcupdate_GenuineIntel.dll
\Windows\System32\ntdll.dll
\Windows\System32\ntoskrnl.exe
\Windows\System32\PSHED.DLL
\Windows\System32\smss.exe
\Windows\System32\Storprop.dll
\Windows\System32\drivers\*

可以用正常途径获得的同名文件覆盖这些文件,也可以将这些文件依次复制到其它分区再剪切回来。
复制 %windir%\System32\drivers\wof.sys 到目标分区的 \Windows\System32\drivers 下
加载目标分区的 \Windows\System32\config\system:(假设映射的文件在 D 盘)
reg load HKLM\temp D:\Windows\System32\config\system
将以下内容保存成 reg 文件,并执行。

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\temp\ControlSet001\Control\WMI\Autologger\EventLog-System\{46c78e5c-a213-46a8-8a6b-622f6916201d}]
"Enabled"=dword:00000001
"EnableLevel"=dword:00000000
"LoggerName"="EventLog-System"
"MatchAnyKeyword"=hex(b):00,00,00,00,00,00,00,80
"MatchAllKeyword"=hex(b):00,00,00,00,00,00,00,00
"EnableProperty"=dword:00000001

[HKEY_LOCAL_MACHINE\temp\ControlSet001\Services\EventLog\System\Microsoft-Windows-OverlayFilter]
"ProviderGuid"="{46c78e5c-a213-46a8-8a6b-622f6916201d}"
"EventMessageFile"=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,\
  00,6f,00,74,00,25,00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,\
  5c,00,64,00,72,00,69,00,76,00,65,00,72,00,73,00,5c,00,77,00,6f,00,66,00,2e,\
  00,73,00,79,00,73,00,00,00

[HKEY_LOCAL_MACHINE\temp\ControlSet001\Services\Wof]
"DisplayName"="Windows Overlay File System Filter Driver"
"ErrorControl"=dword:00000001
"Group"="FSFilter Compression"
"Start"=dword:00000000
"Type"=dword:00000002
"DependOnService"=hex(7):46,00,6c,00,74,00,4d,00,67,00,72,00,00,00,00,00

[HKEY_LOCAL_MACHINE\temp\ControlSet001\Services\Wof\Instances]
"DefaultInstance"="Wof Instance"

[HKEY_LOCAL_MACHINE\temp\ControlSet001\Services\Wof\Instances\Wof Instance]
"Altitude"="40700"
"Flags"=dword:00000000

[HKEY_LOCAL_MACHINE\temp\ControlSet001\Services\Wof\Parameters]

卸载 \Windows\System32\config\system:
reg unload HKLM\temp
重启进入win 7 系统,按 F8 选择 禁用驱动程序签名强制 就可以正常启动系统了。

关于每次都要按 F8 ,可以给 wof.sys 签名测试证书配合在命令提示符输入:
bcdedit -set loadoptions DDISABLE_INTEGRITY_CHECKS
bcdedit -set TESTSIGNING ON
参数解决,不用其他软件签名测试证书而只使用以上参数无效。

评分

参与人数 1无忧币 +5 收起 理由
tapy + 5 很给力!

查看全部评分

推荐
 楼主| 发表于 2014-7-15 17:39:41 | 只看该作者
可以用批处理将列表中的文件替换成实体文件,将除最后一行(\Windows\System32\drivers\*)的文件列表保存到 C:\t.txt 文件里
在批处理中写入以下代码,将指针文件所在分区拖到此批处理上
for /f "delims=" %%a in (C:\t.txt) do copy %~d1%%a %temp%&move /y %temp%\%%~nxa %~d1%%a
for /r %~d1\Windows\System32\drivers %%a in (*) do copy %%a %temp%&move /y %temp%\%%~nxa %%a

评分

参与人数 1无忧币 +5 收起 理由
tapy + 5 有批处理就方便多了啊

查看全部评分

回复

使用道具 举报

推荐
发表于 2014-7-15 17:40:13 | 只看该作者
楼主博大精深........
回复

使用道具 举报

推荐
发表于 2014-7-22 23:46:47 | 只看该作者
谁能把wof.sys 的cat文件找出来,整到win7里面,就不需要签名了。
回复

使用道具 举报

推荐
发表于 2014-7-22 20:22:40 | 只看该作者
关于每次都要按 F8 ,可以给 wof.sys 签名测试证书配合在命令提示符输入:
bcdedit -set loadoptions DDISABLE_INTEGRITY_CHECKS
bcdedit -set TESTSIGNING ON
参数解决,不用其他软件签名测试证书而只使用以上参数无效。

求个能用的签名软件啊~~~~~~~~~~~~~~~~
回复

使用道具 举报

6#
发表于 2014-11-7 10:38:23 | 只看该作者
樓主好,我是嘗試win7 x64使用wimboot啓動不成功的人,每次在啓動時除了數位簽章錯誤以外,都還會出現 ntoskrnl.exe 內核錯誤的問題,在論壇其他地方有人提過相同的狀況,不過檔案名稱是 ntkrnlpa.exe ,不知樓主是否有碰過這種情況,承蒙指教,感激不盡
回复

使用道具 举报

7#
发表于 2015-1-3 22:07:34 | 只看该作者
先留个印,上次试了下,貌似不成功
回复

使用道具 举报

8#
发表于 2015-4-16 20:06:42 | 只看该作者
测试了一下,win7 x86的好像很简单,
我把顶楼的文件列表加入到WimBootCompress.ini中,再安装wof驱动.

然后直接启动进入PE 随便PE都可以,我使用wimlib程序

直接把系统盘加wimboot参数制成wim文件,然后格式化再apply到系统盘同样加wimboot直接启动就可以了.

另外x64的驱动会麻烦一些,不过我第一次测试的就是x64的系统不知怎么弄的竟然没有签名的问题(没有开测试模式哦),目前一切正常,很是奇怪,我把这个系统备份出来了,再找些时间研究一下看看是什么原因引起的,若是能够找到的话就爽了.
回复

使用道具 举报

9#
发表于 2015-6-14 00:12:49 | 只看该作者
能不能让vista也支持wimboot呢
回复

使用道具 举报

10#
 楼主| 发表于 2015-6-15 13:33:52 | 只看该作者
yueyezhan 发表于 2015-6-14 00:12
能不能让vista也支持wimboot呢

win 10 的 adkwof 应该可以让 vista 支持 wimboot,过一段时间我会更新方法。
回复

使用道具 举报

11#
发表于 2015-6-25 09:52:03 来自手机 | 只看该作者
chenall 发表于 2015-4-16 20:06
测试了一下,win7 x86的好像很简单,
我把顶楼的文件列表加入到WimBootCompress.ini中,再安装wof驱动.


C大 你的WIMBOOT.EXE  在天意的8PE x32 x86里面都能够成功转换,PE里没有WOF驱动
但是 昨天下了咱们论坛另一个 C大的作品 IT天空的装机助理 ,里面带wof驱动 居然 报错说
请问C大这是为什么呢?

UC_Photo_001.jpg (51.52 KB, 下载次数: 119)

UC_Photo_001.jpg
回复

使用道具 举报

12#
发表于 2015-10-1 01:54:03 | 只看该作者
参照LZ的教程,我在 Z2760 处理器的平板上试了下将 Windows 8 (ProWMC) x86 改为 WIMBoot,结果不成功,
开机会显示正在诊断错误的信息,接着就只能选择重启或高级启动。请问 Win8 有办法改成支持 WIMBoot 吗?

优先考虑 WIMBoot 而非 Compact OS 是因为平板里有个 10G 大小的复原分区,想说用来存放 WIMBoot 镜像。
转成 Compact OS 倒是很容易,通过 DISM++ 就能实现了(已实测成功),不过目前还比较想实现 WIMBoot。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-11-28 09:41

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表