码迷,mamicode.com
首页 > 其他好文 > 详细

PE制作实录 ——— 补充说明

时间:2014-05-12 02:49:33      阅读:235      评论:0      收藏:0      [点我收藏+]

标签:style   blog   class   code   java   c   

上一篇博文中我提到了定制 PE 合盘的方法,可能还有一些朋友不是很懂,这里补充几点。

要点1 菜单的排布

U盘启动时的界面,这里叫做主界面,而主界面下有时还会用到子界面,下面是我制作的PE的菜单目录:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
GRLDR//主菜单
     |
     | ———OP.LST//工具分类
     |              |
     |              |———FQ.LST//分区工具
     |              |                       |————————MENU.LST//返回主菜单
     |              |———HY.LST//备份工具
     |              |                       |————————MENU.LST//返回主菜单
     |               ———BIOS.LST//BIOS工具         
     |                                      |————————MENU.LST//返回主菜单<br>          |
      ———ED.LST//更多选项
                    |
                    |———US.LST//USB加速
                    |                       |————————MENU.LST//返回主菜单
                     ———MENU.LST//返回主菜单
                                            |————————MENU.LST//返回主菜单

 看到这你大概就明白了,这里的菜单就像文件夹,一个夹着一个。

引导菜单文件(.LST)的命令是:

1
2
3
4
5
6
7
title ****这里是标题******
configfile ****这里是路径*****
 
比如下面的例子:
 
title [ - ] 更多选项  >>>
configfile (bd)/BOOT/GRUB/ED.LST

 

要点2 IMA、IMG工具的使用

IMA、IMG 格式文件放在 TOOLS 目录下(你也可以使用别的目录),使用如下命令引导:

1
2
3
4
5
6
7
8
9
10
11
12
13
title *****这里是标题****
map --mem *****这里是路径*****
map --hook
chainloader (fd0)+1
rootnoverify (fd0)
 
比如下面的例子:
 
title [ 5 ] 安装 GHO 到硬盘第一分区
map --mem (bd)/TOOLS/XGHOST.IMG (fd0)
map --hook
chainloader (fd0)+1
rootnoverify (fd0)

常用的IMA、IMG工具

DISKGENIUS

GHOST

OKGHOST

矮人工具箱

迈思工具箱

深山红叶工具箱

PASSWORD

KONBOOT

PM 分区魔术师

MHDD 磁盘检测

CMOS密码清除

……

 

要点3 Fbinst Tool 的使用

上一篇博文是把怎么使用 FB 格式化U盘省略了,现在补上,看图说话。

bubuko.com,布布扣

bubuko.com,布布扣

FB文件的新建与编辑都是很人性化的,添加某个文件只需要拖动到窗口内就可以,FB可以编辑基于 TXT 的文档。(只要是记事本可以打开不乱码的都可以)

如果你是用记事本编辑的文档一定要保存为 UTF-8 的格式,这样才支持中文显示。

同样地,FB支持导出导入FBA文件,记得制作好的 PE 保存为FBA,下次就可以直接写入了。

bubuko.com,布布扣

 

要点4 常用的命令

上面是标准格式,下面是例子。

引导 ISO 格式文件:

title ***标题***
find --set-root ***路径***
map ***路径*** (0xff)
map --hook
chainloader (0xff)
title [ 2 ] 运行 强悍内置 WINDOWS 2003 PE
find --set-root /BOOT/03.ISO
map (ud)/BOOT/03.ISO (0xff)
map --hook
chainloader (0xff)

 

关机与重启:

title 重新启动
reboot

title 关机
halt

 

引导操作系统:

bubuko.com,布布扣
title ***标题***
find --set-root --devices=h /ntldr || find --set-root --devices=h /bootmgr
calc *0x475&0xff-1 && calc *0x82b8 && map (hd0) ()
calc *0x475&0xff-1 && calc *0x82b8 && map () (hd0)
calc *0x475&0xff-1 && calc *0x82b8 || if exist (hd0,0)/grldr map (hd0) ()
calc *0x475&0xff-1 && calc *0x82b8 || if exist (hd0,0)/grldr map () (hd0)
calc *0x475&0xff-1 && calc *0x82b8 && calc *0x82b9=*0x82b9&0xffffff00|0x81 > nul
calc *0x475&0xff-1 && map --hook
if exist /WINDOWS/SYSTEM32/DRIVERS/ETC/HOSTS || find --set-root --devices=h /WINDOWS/SYSTEM32/DRIVERS/ETC/HOSTS
cat /WINDOWS/SYSTEM32/DRIVERS/ETC/HOSTS | set wincd=
if "%wincd:~,4%"=="(pd)" echo -n  > /WINDOWS/SYSTEM32/DRIVERS/ETC/HOSTS && map --mem %wincd% (0xff) && map --hook && set wincd=
if "%wincd:~,1%"=="/"  echo -n  > /WINDOWS/SYSTEM32/DRIVERS/ETC/HOSTS || set wincd=
if exist wincd && if exist (0)%wincd% root (0) && map --mem (0)%wincd% (0xff) && map --hook && set wincd=
if exist wincd && if exist %wincd% || find --set-root --devices=uh %wincd%
if exist wincd && if exist %wincd% && map %wincd% (0xff) || map --mem %wincd% (0xff)
map --e820cycles=3
map --hook
find --set-root --devices=h /ntldr || find --set-root --devices=h /bootmgr
chainloader ()+1 || chainloader /ntldr || chainloader /bootmgr
bubuko.com,布布扣
bubuko.com,布布扣
title [ 2 ] 引导此计算机上的 Windows 操作系统
find --set-root --devices=h /ntldr || find --set-root --devices=h /bootmgr
calc *0x475&0xff-1 && calc *0x82b8 && map (hd0) ()
calc *0x475&0xff-1 && calc *0x82b8 && map () (hd0)
calc *0x475&0xff-1 && calc *0x82b8 || if exist (hd0,0)/grldr map (hd0) ()
calc *0x475&0xff-1 && calc *0x82b8 || if exist (hd0,0)/grldr map () (hd0)
calc *0x475&0xff-1 && calc *0x82b8 && calc *0x82b9=*0x82b9&0xffffff00|0x81 > nul
calc *0x475&0xff-1 && map --hook
if exist /WINDOWS/SYSTEM32/DRIVERS/ETC/HOSTS || find --set-root --devices=h /WINDOWS/SYSTEM32/DRIVERS/ETC/HOSTS
cat /WINDOWS/SYSTEM32/DRIVERS/ETC/HOSTS | set wincd=
if "%wincd:~,4%"=="(pd)" echo -n  > /WINDOWS/SYSTEM32/DRIVERS/ETC/HOSTS && map --mem %wincd% (0xff) && map --hook && set wincd=
if "%wincd:~,1%"=="/"  echo -n  > /WINDOWS/SYSTEM32/DRIVERS/ETC/HOSTS || set wincd=
if exist wincd && if exist (0)%wincd% root (0) && map --mem (0)%wincd% (0xff) && map --hook && set wincd=
if exist wincd && if exist %wincd% || find --set-root --devices=uh %wincd%
if exist wincd && if exist %wincd% && map %wincd% (0xff) || map --mem %wincd% (0xff)
map --e820cycles=3
map --hook
find --set-root --devices=h /ntldr || find --set-root --devices=h /bootmgr
chainloader ()+1 || chainloader /ntldr || chainloader /bootmgr
bubuko.com,布布扣

 

图形化菜单(根据 Message 文件):

find --set-root (ud)/BOOT/GRUB/MESSAGE
timeout 30
default 0
gfxmenu (ud)/BOOT/GRUB/MESSAGE

 

参考:http://bbs.wuyou.com/forum.php?mod=viewthread&tid=170034

PE制作实录 ——— 补充说明,布布扣,bubuko.com

PE制作实录 ——— 补充说明

标签:style   blog   class   code   java   c   

原文地址:http://www.cnblogs.com/RhinoC/p/3721309.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!