找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
楼主: zxw

[分享] [20150128]自动列表·自动菜单·数字启动

 荐  火.. [复制链接]
发表于 2011-9-6 11:18:50 | 显示全部楼层
原帖由 zxw 于 2011-9-5 17:21 发表
ud区的格式是ansi的,所以乱码,用fbinsttool改为utf-8格式的。
128202

UNIFONT要用我编译的,在一楼有下载。



老大,还有一个问题:我该为UTF8格式后,如果某项菜单加载有问题,比如加载的镜像文件不存在,那么菜单会返回,返回的时候整个菜单变成乱码了,似乎UNIFONT命令失效了。。。。。怎么解决整个问题?
回复

使用道具 举报

 楼主| 发表于 2011-9-6 11:29:06 | 显示全部楼层
如由脚本加载了字体,就在退出前缷载字体。
换句话说,不是脚本加载的字体就不缷载。
所以,你可以在加载脚本前加载字体,退出后就不会缷载字体。
回复

使用道具 举报

发表于 2011-9-6 11:59:29 | 显示全部楼层
原帖由 zxw 于 2011-9-6 11:29 发表
如由脚本加载了字体,就在退出前缷载字体。
换句话说,不是脚本加载的字体就不缷载。
所以,你可以在加载脚本前加载字体,退出后就不会缷载字体。



怎么写?不是很明白,给个菜单写法范例,谢谢!

下面是我的菜单


  1. timeout 30
  2. default 0
  3. find --set-root --ignore-floppies /hytools/grub/boot/message
  4. command --set-path=/hytools/grub/addon/
  5. #gfxmenu /hytools/grub/message
  6. #fontfile /hytools/grub/boot/fonts.gz
  7. UNIFONT /hytools/grub/boot/U16.GZ
  8. splashimage /hytools/grub/boot/hytools.xpm.gz
复制代码

[ 本帖最后由 HUNRYBECKY 于 2011-9-6 12:01 编辑 ]
回复

使用道具 举报

 楼主| 发表于 2011-9-6 12:00:59 | 显示全部楼层

回复 #1696 HUNRYBECKY 的帖子

你的菜单是如何写的?我看看
回复

使用道具 举报

发表于 2011-9-6 13:07:08 | 显示全部楼层
原帖由 zxw 于 2011-9-6 12:00 发表
你的菜单是如何写的?我看看


我的菜单如下:


  1. timeout 30
  2. default 0
  3. find --set-root --ignore-floppies /hytools/grub/boot/message
  4. command --set-path=/hytools/grub/addon/
  5. #gfxmenu /hytools/grub/message
  6. #fontfile /hytools/grub/boot/fonts.gz
  7. UNIFONT /hytools/grub/boot/U16.GZ
  8. splashimage /hytools/grub/boot/hytools.xpm.gz
  9. #####################################################################
  10. title [0] 磁盘快速分区工具DiskGenius
  11. #command RUN /0PE/MENU.0PE 9
  12. command RUN /HYTOOLS/IMGS/DG.IMG
  13. title [1] 磁盘加密分区工具ACRONIS
  14. command RUN /HYTOOLS/IMGS/ADDS.IMA
  15. title [2] 磁盘无损分区工具PartionMagic
  16. command RUN /HYTOOLS/IMGS/PQ.IMG
  17. title [3] 磁盘专业分区工具DM
  18. command RUN /HYTOOLS/IMGS/DM.IMA
  19. title [4] 磁盘坏道修复工具HDDREG
  20. #最新版的无法整合,修改任何内容都会无法启动
  21. #command RUN /HYTOOLS/IMGS/HDDREG2011.IMA
  22. command RUN /HYTOOLS/IMGS/HDDREG.IMA
  23. title [5] 磁盘坏道修复工具MHDD
  24. command RUN /HYTOOLS/IMGS/MHDD.IMA
  25. title [6] 解锁硬盘逻辑炸弹
  26. command RUN /HYTOOLS/IMGS/ULOCK.IMG
  27. title [7] 系统内存测试工具
  28. #command RUN /HYTOOLS/IMGS/MEMTEST.IMG
  29. #command RUN /BOOT/IMGS/MEMTEST.BIN
  30. command RUN /BOOT/IMGS/MEMTEST.GZ
复制代码
回复

使用道具 举报

 楼主| 发表于 2011-9-6 14:43:40 | 显示全部楼层
@HUNRYBECKY:
才上传的版本应该可以了。
回复

使用道具 举报

发表于 2011-9-6 15:10:38 | 显示全部楼层
原帖由 zxw 于 2011-9-6 14:43 发表
@HUNRYBECKY:
才上传的版本应该可以了。



测下了下,的确可以了。Z大的更新速度还挺快的。!
回复

使用道具 举报

发表于 2011-9-6 15:19:31 | 显示全部楼层
Z大,还有一个问题,看我下面的菜单

  1. command RUN /HYTOOLS/GRUB/MENUS/PEMENUS.LST || find --set-root --ignore-floppies /MYISO/MYISO.TXT && command RUN /MYISO/PEMUNES.LST
复制代码


菜单标明如果加载 /HYTOOLS/GRUB/MENUS/PEMENUS.LST 失败的话应该执行find --set-root --ignore-floppies /MYISO/MYISO.TXT && command RUN /MYISO/PEMUNES.LST
但是在测试中发现,如果||前加载失败的话不会自动执行||后的语句?这是RUN的问题还是G4D的问题?
回复

使用道具 举报

发表于 2011-9-6 17:26:31 | 显示全部楼层
这个语句用在这里并不合适,因为RUN在调用pemenus.lst时,如果出现找不到该文件而调用失败,RUN自己会自动返回出错处理模块,返回到主菜单或自定义返回菜单。不会自动调用||后的语句。
所以应该这样写:
find --set-root /HYTOOLS/GRUB/MENUS/PEMENUS.LST
command run //HYTOOLS/GRUB/MENUS/PEMENUS.LST
回复

使用道具 举报

发表于 2011-9-6 17:28:33 | 显示全部楼层
其实根本不用FIND去查找该菜单文件 ,RUN会自动去查找。只写第二条语句就行了。
回复

使用道具 举报

发表于 2011-9-6 17:35:43 | 显示全部楼层
原帖由 幸运的草 于 2011-9-6 17:28 发表
其实根本不用FIND去查找该菜单文件 ,RUN会自动去查找。只写第二条语句就行了。


原来如此,感谢幸运的草的回答!那如果我想实现我菜单的双重调用就比较麻烦了。部分东西可以外置的,如果内置了就优先使用内置的,没有的话就使用外置的,如果内置和外置的目录相同就好办,关键是我的内置和外置的目录不同,呵呵。比较麻烦。
回复

使用道具 举报

发表于 2011-9-6 18:06:50 | 显示全部楼层
这个也好办,两个目录根据你的意愿,在目录中放入一个定位文件,通过FIND查找确定。
比如,你UD区的X1目录中放一个XX1文件,在可见区的X1或其他名的目录中放入XX2文件,要调用这两个目录中的JJJ.LST文件,先调用UD区的,如果找不到就调用可见区的。
find --set-root  /x1/xx1 || find --set-root /x1/xx2
run /x1/jjj.lst
回复

使用道具 举报

发表于 2011-9-6 22:33:14 | 显示全部楼层
原帖由 幸运的草 于 2011-9-6 18:06 发表
这个也好办,两个目录根据你的意愿,在目录中放入一个定位文件,通过FIND查找确定。
比如,你UD区的X1目录中放一个XX1文件,在可见区的X1或其他名的目录中放入XX2文件,要调用这两个目录中的JJJ.LST文件,先调 ...



回幸运的草,还是不能达到我的要求,FIND虽然可以多目录查找,但是run /x1/jjj.lst中X1只能固定,除非两个目录命名一直,而且目录层级数一致。
回复

使用道具 举报

发表于 2011-9-6 22:39:36 | 显示全部楼层
原帖由 zxw 于 2011-9-6 14:43 发表
@HUNRYBECKY:
才上传的版本应该可以了。



回复Z大,又发现一个重大的问题,你今天更新的RUN虽然解决了UTF8乱码的问题,但与0PE的兼容性存在重大问题。我RUN整体载入0PE.ISO后发现0PE的主菜单部分菜单项丢失,如看不到2,3项目了;如果使用RUN /OPE/MENU.OPE NUM后发现正确进入菜单项后整个界面全黑的,通过上下键可以移动到菜单项,但全是“暗箱操作”,菜单项看不见了。。。郁闷。我用的是OPE最新版本20110830的版本。
回复

使用道具 举报

 楼主| 发表于 2011-9-6 23:55:24 | 显示全部楼层

回复 #1707 HUNRYBECKY 的帖子

很抱歉,我测试没有问题。怀疑你的使用有问题,如多处用字体等。
回复

使用道具 举报

发表于 2011-9-7 09:12:47 | 显示全部楼层
原帖由 zxw 于 2011-9-6 23:55 发表
很抱歉,我测试没有问题。怀疑你的使用有问题,如多处用字体等。


没有多处使用字体,下面是菜单代码
1.GRLDR内置主菜单代码

  1. checkrange 0x21 read 0x8280 && pxe detect NotExist
  2. timeout 10
  3. default 0
  4. find --set-root --ignore-floppies /hytools/grub/addon/RUN
  5. command --set-path=/hytools/grub/addon/
  6. gfxmenu /hytools/grub/boot/message
  7. configfile (md)4+8
  8. #####################################################################
  9. title [0] 运行鸿越WINPE2003外置程序版
  10. echo Please Input the Item passwords!
  11. password --md5 $1$2$Ad/nMqvGCBoXeJwf8OKrW.
  12. command RUN --fira /HYTOOLS/IMGS/HYPE.ISO || RUN --mem --fira /HYTOOLS/IMGS/HYPE.ISO
  13. title [1] 运行鸿越无盘终端客户端登陆(VIP)
  14. echo Please Input the Item passwords!
  15. password --md5 $1$2$Ad/nMqvGCBoXeJwf8OKrW.
  16. command RUN /HYTOOLS/IMGS/HYRDP.IMA
  17. title [2] 运行鸿越DOS工具箱
  18. echo Please Input the Item passwords!
  19. password --md5 $1$2$Ad/nMqvGCBoXeJwf8OKrW.
  20. command RUN /HYTOOLS/IMGS/HYDOS.IMA
  21. title [3] 运行Pseudo 0PE XP中文版
  22. #0PE目录保持完整,可以外置,不作任何更改,部分工具通过菜单项调用,如果调用后直接启动到内置菜单,可以增加一句RUN --noboot /0PE/0PE.ISO
  23. echo Please Input the Item passwords!
  24. password --md5 $1$2$Ad/nMqvGCBoXeJwf8OKrW.
  25. #command RUN /0PE/MENU.0PE || RUN /HYTOOLS/GRUB/MENUS/MENU.0PE
  26. command RUN /0PE/0PE.ISO
  27. title [4] 运行郭明阳一键还原
  28. echo Please Input the Item passwords!
  29. password --md5 $1$2$Ad/nMqvGCBoXeJwf8OKrW.
  30. command RUN /HYTOOLS/IMGS/ONEKEY.IMG
  31. title [5] 运行MAXDOS工具箱
  32. echo Please Input the Item passwords!
  33. password --md5 $1$2$Ad/nMqvGCBoXeJwf8OKrW.
  34. command RUN /HYTOOLS/IMGS/MAXDOS.IMG
  35. title [6] 进入全能系统维护子菜单
  36. echo Please Input the Item passwords!
  37. password --md5 $1$2$Ad/nMqvGCBoXeJwf8OKrW.
  38. command RUN /HYTOOLS/GRUB/MENUS/SYSMAIN.LST
  39. title [7] 进入全能安装启动子菜单
  40. echo Please Input the Item passwords!
  41. password --md5 $1$2$Ad/nMqvGCBoXeJwf8OKrW.
  42. command RUN /HYTOOLS/GRUB/MENUS/SYSBOOT.LST

复制代码


2.第7项子菜单代码

  1. scheckrange 0x21 read 0x8280 && pxe detect NotExist
  2. timeout 20
  3. default 0
  4. find --set-root --ignore-floppies /hytools/grub/addon/RUN
  5. command --set-path=/hytools/grub/addon/
  6. #gfxmenu /hytools/grub/boot/message
  7. splashimage /hytools/grub/boot/hytools.xpm.gz
  8. #fontfile /hytools/grub/boot/fonts.gz
  9. UNIFONT /hytools/grub/boot/U16.GZ
  10. #####################################################################
  11. #注:有关0PE:RUN自带搜索功能,可以不用事先使用find命令;如果要整体调用OPE.ISO可以直接用两条命令RUN --NOBOOT /YOURPATH/0PE.ISO 和RUN /M.0PE NUM
  12. title [0] 镜像光盘仿真启动器(自动列表方式,支持ISO文件)
  13. #find --set-root --ignore-floppies /0PE/MENU.0PE
  14. #RUN --noboot /0PE/0PE.ISO
  15. command RUN /0PE/MENU.0PE 6
  16. title [1] 镜像光盘仿真加载器(指定文件方式,默认/MYISO/MYISO.ISO)
  17. #find --set-root --ignore-floppies /0PE/MENU.0PE
  18. command RUN /0PE/MENU.0PE 6 /MYISO/MYISO.ISO
  19. title [2] 镜像软盘启动器(自动列表方式,支持IMA/IMG/GZ)
  20. #find --set-root --ignore-floppies /0PE/MENU.0PE
  21. command RUN /0PE/MENU.0PE 9
  22. title [3] 仿真F6软驱后串接菜单(加载FIRA后启动ISO)
  23. #find --set-root --ignore-floppies /0PE/MENU.0PE
  24. command RUN /BOOT/GRUB/MENU.0PE 7
  25. title [4] SRS驱动F6软驱后返回菜单(加载SRS驱动和FIRA后启动ISO)
  26. command /HYTOOLS/GRUB/ADDON/SRSF6 /SRSF6/ || find --set-root --ignore-floppies /SRSF6/SRSF6 && /SRSF6/SRSF6
  27. title [5] WINDOWS NT 通用菜单加载器(支持系统安装)
  28. #有关参数详细参考http://chenall.net/post/ntboot/
  29. color 11 12 13 14
  30. command /HYTOOLS/GRUB/NTBOOT/NTBOOT menu
  31. title [6] 自动菜单选择启动器(指定/MYISO/目录,支持无SRS驱动的WINXP系统安装)
  32. #可以实现不进行FIND查找镜像路径;如有汉字应加--gfx参数并在RUN模块目录放置unifont字体,封装版已集成该字体;--quiet参数强制加载firadisk后从ISO启动; 自动列表如要设置按M返回的主菜单可用--set-menu=参数,默认返回GRUB内置菜单;--set-path=设置默认镜像文件路径;--set-lab=参数设置非常用菜单后缀如--set-lab=.cfg
  33. #command RUN --txt --gfx --fira --set-ext=+.iso|.ima|.img|.gz|.bin|.wim|.|/ /MYISO/.automenu || command RUN --mem --fira --set-ext=+.iso|.ima|.img|.gz|.bin|.wim|.|/ /MYISO/.automenu
  34. command RUN --gfx /MYISO/.automenu
  35. title [7] 自动列表选择启动器(指定/MYISO/目录,支持无SRS驱动的WINXP系统安装)
  36. command RUN --fira --set-ext=+.iso|.ima|.img|.gz|.bin|.wim|.|/ /MYISO/ || command RUN --mem --fira --set-ext=+.iso|.ima|.img|.gz|.bin|.wim|.|/ /MYISO/
  37. title [8] 自动列表选择启动器(指定/MYISO/MYISO.ISO文件安装无SRS驱动系统)
  38. command RUN --fira /MYISO/MYISO.ISO || command RUN --mem --fira /MYISO/MYISO.ISO
复制代码


我仔细检查了,我的菜单写法似乎没有问题,也没有重复使用字体
如果我把第7项子菜单UNIFONT /hytools/grub/boot/U16.GZ换成fontfile /hytools/grub/boot/fonts.gz并把菜单保存为ANSI后一切正常。。。。。。

下面是问题贴图
主菜单第3项调用直接RUN 0PE.ISO的
主菜单第3项调用OPE.ISO.jpg
发现少了2,3项菜单不见了,我换成老版本的0PE.ISO,发现没有问题
菜单2,3没有了.jpg
从主菜单进入7项子菜单
主菜单进入子菜单.jpg
从子菜单进入0项子子菜单,代码command RUN /0PE/MENU.0PE 6
子菜单进入第0项菜单.jpg
进入后发现正确调用了0PE的NUM6子菜单,就是看不到菜单内容了.我不使用UNIFONT发现就没有问题,注:我使用的是中文的GRLDR,没有测试英文版本的GRLDR
看不到菜单内容了.jpg
回复

使用道具 举报

发表于 2011-9-7 09:16:15 | 显示全部楼层
刚才换成英文GRLDR,问题依然存在
回复

使用道具 举报

 楼主| 发表于 2011-9-7 10:01:21 | 显示全部楼层

回复 #1710 HUNRYBECKY 的帖子

绕来绕去整这么复杂看着头昏。
所谓"0pe2,3项菜单不见了",新版0PE本来就是这样。是p大偷了懒,直接屏蔽了以前菜单的2、3项,未改序号。
后面看不到菜单内容,是字体冲突。
是你自己加载了UNIFONT字体,run不会帮你缷载。调用0pe前,你要自己缷载字体。

[ 本帖最后由 zxw 于 2011-9-7 10:07 编辑 ]
回复

使用道具 举报

发表于 2011-9-7 10:25:54 | 显示全部楼层
原帖由 zxw 于 2011-9-7 10:01 发表
绕来绕去整这么复杂看着头昏。
所谓"0pe2,3项菜单不见了",新版0PE本来就是这样。是p大偷了懒,直接屏蔽了以前菜单的2、3项,未改序号。
后面看不到菜单内容,是字体冲突。
是你自己加载了UNIFONT字体,run不 ...


难怪,我昨天一起把0PE给更新了。。。
之所以在我的菜单中使用UNIFONTS,是想把整个菜单都弄成UTF8的。
回复

使用道具 举报

发表于 2011-9-7 10:36:43 | 显示全部楼层
Z大能否加个功能,如果已经检测到加载了字体,就卸载,这样就不会有冲突了。
回复

使用道具 举报

 楼主| 发表于 2011-9-7 11:55:11 | 显示全部楼层

回复 #1713 HUNRYBECKY 的帖子

run脚本尽量保持调用前的环境,包括字体。你自己使用不当,应该自己解决。run脚本不会智能到满足不同的的需要,比如你要求缷载字体,他要求保留字体。那应该满足谁的要求?

另外,你用0pe原始的调用方式测试一下,你就知道问题与run无关:
UNIFONT /hytools/grub/boot/U16.GZ
find --set-root --ignore-floppies /0PE/MENU.0PE
configfile /0PE/MENU.0PE

[ 本帖最后由 zxw 于 2011-9-7 12:05 编辑 ]
回复

使用道具 举报

发表于 2011-9-7 13:27:05 | 显示全部楼层

回复 #1706 HUNRYBECKY 的帖子

我只是抛砖引玉,并不是要目录固定及层数一致,只要一个特定的定位文件,可以按你的需要灵活运用。结合RUN就可以达到你的目的。
回复

使用道具 举报

发表于 2011-9-7 13:36:40 | 显示全部楼层

回复 #1712 HUNRYBECKY 的帖子

0PE有自己的专用字库加载,不能外加字库,如果你有自己的菜单中使用了字库,在加载0PE前要自己卸载字库,否则造成冲突,0PE就没有汉字菜单了。
 这个问题与RUN无关。因为 RUN中加载字库在前,0PE加载字库在后。加载0PE后就由0PE接管了。RUN就失去作用了。
  即使按你的要求判断是否加载字库,那在加载0PE前是不存在双重字库的。0PE加载后RUN就无法作用了。除非0PE的菜单中有判断是否加载字库,否则很难解决。
回复

使用道具 举报

 楼主| 发表于 2011-9-7 13:44:56 | 显示全部楼层

回复 #1713 HUNRYBECKY 的帖子

想了一下,加载0pe时,还是满足你的要求吧。
回复

使用道具 举报

发表于 2011-9-7 15:04:32 | 显示全部楼层
那就在调用0PE的模块中增加一个判断加载UNIFONT字库的语句,如果已经加载该 字库,就--UNLOAD.
曾试着让0PE与RUN支持同一套字库,但没成功,也没再去弄,否则就不会造成冲突了。

[ 本帖最后由 幸运的草 于 2011-9-7 15:07 编辑 ]
回复

使用道具 举报

发表于 2011-9-7 16:23:08 | 显示全部楼层
原帖由 幸运的草 于 2011-9-7 13:36 发表
0PE有自己的专用字库加载,不能外加字库,如果你有自己的菜单中使用了字库,在加载0PE前要自己卸载字库,否则造成冲突,0PE就没有汉字菜单了。
 这个问题与RUN无关。因为 RUN中加载字库在前,0PE加载字库在后 ...


感谢Z大和幸运的草的提醒,因为对0PE和RUN用法不是很了解,所以造成很多误解。我现在不用UTF9菜单了,所以也就没有这个问题了。。。
回复

使用道具 举报

发表于 2011-9-7 16:28:22 | 显示全部楼层
原帖由 zxw 于 2011-9-7 11:55 发表
run脚本尽量保持调用前的环境,包括字体。你自己使用不当,应该自己解决。run脚本不会智能到满足不同的的需要,比如你要求缷载字体,他要求保留字体。那应该满足谁的要求?

另外,你用0pe原始的调用方式测试 ...



感谢Z大的指正。
测试中我发现RUN 可以智能加载ISO是否使用-MEM参数,比如ISO是连续存放(内置到UD隐藏分区)的,RUN /MYISO/0PE.ISO则不会加载到内存中,如果我把0PE外置到硬盘,我发现该命令不用加--MEM会自动加载到内存,不知道我的理解是否正确?反正测试中我发现是这样的。
另外我发现如果加入--fira参数,无论内置还是外置都会加载到内存中运行。
回复

使用道具 举报

发表于 2011-9-7 17:46:29 | 显示全部楼层
原帖由 zxw 于 2011-9-7 13:44 发表
想了一下,加载0pe时,还是满足你的要求吧。


感谢,刚才测试了下,一切正常,我又把我的菜单改为UTF8了,这样我就不用每行调用0PE的菜单都加入下载字体的命令了。。。
回复

使用道具 举报

发表于 2011-9-7 21:07:25 | 显示全部楼层

回复 #1720 HUNRYBECKY 的帖子

0PE要讲究“布署”,一般调用最好用0PE原版的GRLDR内置菜单,合盘时可以调用自带的MENU.0PE。
使用RUN调用也可以,属于一般PE的调用方法,用P大的话说属“布署不当”,不使用--mem参数,与ISO大小影响不大,如果使用--MEM参数将ISO加载到内存中,那么对于ISO大小影响就很大了。不使用--mem参数,要求ISO必须是连续存放(这是G4D的要求),使用--MEM参数,不要求连续存放。
回复

使用道具 举报

发表于 2011-9-7 22:17:17 | 显示全部楼层
请教zxw,

我用
  1. find RUN /Slitaz/Slitaz.iso
复制代码
启动/Slitaz/Slitaz.iso成功。
然后我试图用下面的代码,查找根目录下有iso文件的分区(如E盘),找到后自动列表,
  1. command --set-path=(bd)/BOOT/GRUB/
  2. find command RUN --set-ext=.iso /
复制代码
这段代码失败了。
而
  1. find command RUN --set-ext=.iso /ISO/
复制代码

却成功了,奇怪。

[ 本帖最后由 2011_dihuo0 于 2011-9-8 08:09 编辑 ]
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-10-8 04:21

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

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