无忧启动论坛

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

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

    [复制链接]
1681#
发表于 2011-9-4 12:10:55 | 只看该作者
原帖由 zxw 于 2011-9-4 11:05 发表
我测试了一下,没有问题啊。你的提示什么错误?


晕,实机测试没有问题。开始我是用qemu测试的。
回复

使用道具 举报

1682#
发表于 2011-9-5 10:52:28 | 只看该作者
先用pseudo 的USB_ACC加速u盘,
再用自动列表效果方式能显示文件列表,
但是按数字键不起作用,
输入文件名就能能启动镜像文件
回复

使用道具 举报

1683#
发表于 2011-9-5 11:33:29 | 只看该作者
原帖由 zxw 于 2011-9-4 00:41 发表
回复 #1674 yidawpf 的帖子
抱歉,没看懂是什么意思?

回复 #1670 HUNRYBECKY 的帖子
看你的截图,似乎使用了ansi字体?grub4dos对字体处理,目前并不十分完善,不建议混杂使用字体。
或者试试这个测试版 ...



回Z大:
我内置菜单使用了GFXMENU,如果是ANTI字体则显示不出菜单,所以内置菜单使用了UTF-8的字体,子菜单我发现使用UTF-8会乱码,所以我使用了ANTI字体,没有办法,不知道哪里有没有子菜单能支持UTF-8的字体没有?
有空测试下你的这个测试版RUN
回复

使用道具 举报

1684#
发表于 2011-9-5 11:37:54 | 只看该作者
原帖由 2011shenql 于 2011-9-5 10:52 发表
先用pseudo 的USB_ACC加速u盘,
再用自动列表效果方式能显示文件列表,
但是按数字键不起作用,
输入文件名就能能启动镜像文件


应该是没有在调用的时候加入command吧?调用应该是command RUN ....
如果RUN不再默认路径,应该加上路径,如command (ud)/grub/boot/RUN...
回复

使用道具 举报

1685#
发表于 2011-9-5 12:49:12 | 只看该作者

回复 #1684 HUNRYBECKY 的帖子

加入了command调用run,
也加了路径,
能输入列表中的文件名启动,说明run是起作用了的吧
觉得usb_acc是用批处理的方式产生一些选单,
然后run也是用的批处理
是不是前后批处理互相影响了?
回复

使用道具 举报

1686#
发表于 2011-9-5 13:36:38 | 只看该作者
原帖由 2011shenql 于 2011-9-5 12:49 发表
加入了command调用run,
也加了路径,
能输入列表中的文件名启动,说明run是起作用了的吧
觉得usb_acc是用批处理的方式产生一些选单,
然后run也是用的批处理
是不是前后批处理互相影响了?



取消USB_ACC看看行不行
回复

使用道具 举报

1687#
发表于 2011-9-5 14:31:42 | 只看该作者
原帖由 zxw 于 2011-9-4 00:41 发表
回复 #1674 yidawpf 的帖子
抱歉,没看懂是什么意思?

回复 #1670 HUNRYBECKY 的帖子
看你的截图,似乎使用了ansi字体?grub4dos对字体处理,目前并不十分完善,不建议混杂使用字体。
或者试试这个测试版 ...



刚才测试,虽然不重新启动了,但是还是半天没有任何反应。是使用QUME虚拟机测试的。
另外,我刚才下载了UNIFONT和字体,加入UNIFONT /hytools/grub/boot/U16.BIN代码,保存MENU为UTF8格式,结果菜单还是乱码,郁闷。。。

[ 本帖最后由 HUNRYBECKY 于 2011-9-5 15:53 编辑 ]
回复

使用道具 举报

1688#
发表于 2011-9-5 16:02:30 | 只看该作者

回复 #1686 HUNRYBECKY 的帖子

取消usb_acc可以,我以前就这么用
但是很慢,增加usb_acc速度提升明显
回复

使用道具 举报

1689#
 楼主| 发表于 2011-9-5 16:08:55 | 只看该作者

回复 #1687 HUNRYBECKY 的帖子

取消splashimage命令
回复

使用道具 举报

1690#
发表于 2011-9-5 16:23:27 | 只看该作者
原帖由 zxw 于 2011-9-5 16:08 发表
取消splashimage命令



取消了,也一样,现在测试OK了,发现是UNIFONT本身的问题,我下载了utils-2011-06-27.zip,使用其中的替换就对了,不过字体看起来不是很爽呀,有没有比较好看的字体?

回复

使用道具 举报

1691#
发表于 2011-9-5 17:00:03 | 只看该作者
继续测试,UTF-8菜单显示正确后,RUN加载--gfx 参数已经正常了,不过还有个问题,就是如果我的文件如果是中文的,则显示的是乱码,我注释掉UNIFONT /hytools/grub/boot/U16.BIN加载菜单,乱码进入RUN测试,发现自动菜单还是乱码的。见图

回复

使用道具 举报

1692#
 楼主| 发表于 2011-9-5 17:21:06 | 只看该作者

回复 #1691 HUNRYBECKY 的帖子

ud区的格式是ansi的,所以乱码,用fbinsttool改为utf-8格式的。


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

[ 本帖最后由 zxw 于 2011-9-5 17:50 编辑 ]
回复

使用道具 举报

1693#
发表于 2011-9-6 10:44:02 | 只看该作者
更新了,看看新版本的!谢谢!!!
回复

使用道具 举报

1694#
发表于 2011-9-6 11:18:50 | 只看该作者
原帖由 zxw 于 2011-9-5 17:21 发表
ud区的格式是ansi的,所以乱码,用fbinsttool改为utf-8格式的。
128202

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



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

使用道具 举报

1695#
 楼主| 发表于 2011-9-6 11:29:06 | 只看该作者
如由脚本加载了字体,就在退出前缷载字体。
换句话说,不是脚本加载的字体就不缷载。
所以,你可以在加载脚本前加载字体,退出后就不会缷载字体。
回复

使用道具 举报

1696#
发表于 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 编辑 ]
回复

使用道具 举报

1697#
 楼主| 发表于 2011-9-6 12:00:59 | 只看该作者

回复 #1696 HUNRYBECKY 的帖子

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

使用道具 举报

1698#
发表于 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
复制代码
回复

使用道具 举报

1699#
 楼主| 发表于 2011-9-6 14:43:40 | 只看该作者
@HUNRYBECKY:
才上传的版本应该可以了。
回复

使用道具 举报

1700#
发表于 2011-9-6 15:10:38 | 只看该作者
原帖由 zxw 于 2011-9-6 14:43 发表
@HUNRYBECKY:
才上传的版本应该可以了。



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

使用道具 举报

1701#
发表于 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的问题?
回复

使用道具 举报

1702#
发表于 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
回复

使用道具 举报

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

使用道具 举报

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


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

使用道具 举报

1705#
发表于 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
回复

使用道具 举报

1706#
发表于 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只能固定,除非两个目录命名一直,而且目录层级数一致。
回复

使用道具 举报

1707#
发表于 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的版本。
回复

使用道具 举报

1708#
 楼主| 发表于 2011-9-6 23:55:24 | 只看该作者

回复 #1707 HUNRYBECKY 的帖子

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

使用道具 举报

1709#
发表于 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的

发现少了2,3项菜单不见了,我换成老版本的0PE.ISO,发现没有问题

从主菜单进入7项子菜单

从子菜单进入0项子子菜单,代码command RUN /0PE/MENU.0PE 6

进入后发现正确调用了0PE的NUM6子菜单,就是看不到菜单内容了.我不使用UNIFONT发现就没有问题,注:我使用的是中文的GRLDR,没有测试英文版本的GRLDR
回复

使用道具 举报

1710#
发表于 2011-9-7 09:16:15 | 只看该作者
刚才换成英文GRLDR,问题依然存在
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2025-2-23 14:02

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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