本帖最后由 danceinwar 于 2015-10-27 19:35 编辑
上个月闲来无事,受PCbeta一篇帖子启发,我把自己的SSD重新规划了一下,只分一个主分区,资料则存在另一块300G的希捷硬盘上。PE里用imagex把win7灌入VHD,挂载并创建引导 bcdboot V:\windows /s C: /l zh-cn,然后进去装驱动调整使用习惯设置,建了个差分盘,激活用的是小马Oem7F7,这个软件会在系统分区根目录产生一个文件ABCDE(可以自定义,我取的是这个),并且修改了PBR
因为其他的一些需要,我打算用G4D作为主引导器,版本是grub4dos-0.4.5c。通过BOOTICE工具向MBR写入GRUB4DOS引导代码,复制grldr和menu.lst到活动分区根目录,菜单如下,精简过的,这里主要讨论win7启动的部分
color black/cyan yellow/cyan
timeout 1
default /default
title Windows 7
find --set-root --ignore-floppies /bootmgr
chainloader /bootmgr
boot
这样启动自然是会导致之前的激活失效,因为没有通过ABCDE,菜单稍微改为如下后,启动便可恢复激活
重写PBR或者删除ABCDE都会导致激活失效
title Windows 7
find --set-root --ignore-floppies /ABCDE
chainloader /ABCDE
boot
所以我猜测模拟win7激活所需的slic2.1表应该是存放在ABCDE中的(之所以猜测是因为我没办法确认,百度谷歌无果,可能是搜索方法不对,无忧应该很多人知道)
我查到的一些资料说Oem7F7是通过修改版的GRUB4DOS来实现模拟BIOS,1、那么ABCDE是不是就是G4D的启动文件grldr修改而来的?知道的人帮忙解答一下,谢谢了
如果ABCDE不是修改版的grldr,那么下面的都不用看了,都是瞎猜的
假设ABCDE就是grldr,则搜索各分区目录下grldr的代码就写在MBR或者PBR中,我在激活前后分别保存了这两个引导记录的数据,比对发现只有PBR做了修改,并且修改后的PBR代码里包含ABCDE字样,所以启动顺序应该可以理解为
BIOS -> MBR -> DPT -> PBR -> ABCDE -> BOOTMGR ->BCD -> SYSTEM
2、如果ABCDE是 grldr,那么搜索GRUB4DOS启动文件的代码是写在PBR中的,为什么用BOOTICE去查看分区引导记录时显示的仍然是BOOTMGR引导程序,而不是GRUB4DOS?知道的人帮忙解答一下,谢谢
我猜测ABCDE是 grldr,所以想像使用grldr那样去使用它,但ABCDE不能调用外部菜单,所以怀疑是内置菜单被改过了
3、用GRLDR菜单编辑器去打开也看不到内置菜单,所以我猜测有几种可能:
a. ABCDE不是grldr
b. Oem7F7出来已经很久了,当时用的GRUB4DOS版本比较老导致grldr文件结构上的不一致
c. 其他
主要就3个问题,希望有高人能帮我解答一下疑惑,感激不尽,继续看琅琊榜
肯定有人说我为什么不去无忧发帖,其实我只是比较习惯卡饭
|