717758565 发表于 2011-1-7 12:18:29

zxw你好我刚才测试出现下面两种情况         GRUB4DOS是2022.1.6 WENV是2010.12.16

按回车出现下面这种情况

这个菜单没显示数字

tubaozi 发表于 2011-1-7 13:01:28

原帖由 zxw 于 2010-12-21 15:42 发表 http://bbs.wuyou.net/images/common/back.gif
chenall大侠帖子《GRUB4DOS 批处理脚本的简易应用》,动手diy了一下。

::GRUB4DOS 简易批处理脚本
::用法:
::   1.直接启动如:RUN MAXDOS.IMG
::                     RUN FIRADISK WIN.ISO
...

改了?不是输入数字可启动对应文件了?



GRLDR、WENV、RUN都是最新的。

zxw 发表于 2011-1-7 13:27:18

@717758565、tubaozi :
晕,我这里测试正常。看来这种方法还不太稳当。最开始的方法虽最为稳当,但文件越多生成的变量越多,而grub4dos有60个变量的限制。

只有谋求新的方法了。……

zxw 发表于 2011-1-7 14:23:40

经排查,属本人粗心大意写错一句代码,已在一楼紧急更新。
已下载的坛友请重新下载。为此带来的不便,请多多包涵!!

[ 本帖最后由 zxw 于 2011-1-7 14:25 编辑 ]

717758565 发表于 2011-1-7 15:43:22

zxw不好意思问题还是那样没改变,和tubaozi 兄说的是一样的现象,我的连数字都不显示他的还好

超过十个就显示数字但是不能启动

输入之后就是这样


[ 本帖最后由 717758565 于 2011-1-7 15:53 编辑 ]

tubaozi 发表于 2011-1-7 15:51:18

原帖由 717758565 于 2011-1-7 15:43 发表 http://bbs.wuyou.net/images/common/back.gif
zxw不好意思问题还是那样没改变,和tubaozi 兄说的是一样的现象

换最新的RUN输入数字问题已解决。





717758565 发表于 2011-1-7 15:56:10

回复 #216 tubaozi 的帖子

tubazi兄能把你的menu的代码发上来吗谢谢

zxw 发表于 2011-1-7 15:59:45

回复 #215 717758565 的帖子

看你的截图,我怀疑你是否用错?.

[ 本帖最后由 zxw 于 2011-1-7 16:02 编辑 ]

717758565 发表于 2011-1-7 16:07:02

zxw你好我的都是刚下载的最新的哪儿会出错呢请指教   我把以前的 都删了
这个是我的配置菜单有问题吗
timeout 5
default 0
color white/green yellow/green
command --set-path=(bd)/boot/grub/
insmod (bd)/boot/grub/WENV
titleautomenu
RUN /boot/.automenu
titleautomenu
run /boot/我把这里的加入imgs/还是一样
我在线等

[ 本帖最后由 717758565 于 2011-1-7 16:10 编辑 ]

tubaozi 发表于 2011-1-7 16:17:58

原帖由 717758565 于 2011-1-7 15:56 发表 http://bbs.wuyou.net/images/common/back.gif
tubazi兄能把你的menu的代码发上来吗谢谢

这是两位RUN作者菜单的结合。


#声明外部命令位置
command --set-path=(bd)/BOOT/GRUB/
#将外部命令WENV加载进内存
insmod (bd)/BOOT/GRUB/WENV
UNIFONT (bd)/BOOT/GRUB/U16HEI
foreground ffffff
background 1030C0
title 启动GHOST
RUN /BOOT/IMGS/XGHOST.IMG
boot
title 启动PE
RUN /WXPE/SETUPLDR.BIN
boot
title dos时代菜鸟工具箱
RUN /BOOT/IMGS/DTS.IMA
boot
title dos时代菜鸟工具箱里的DiskGenius
#仅限dts.ima 117版,166版请自行修改write --offset=317为write --offset=419
RUN /BOOT/IMGS/DTS.IMA 1c
boot
title DiskGenius
RUN /BOOT/IMGS/DG.IMG
boot
title ADDS分区
RUN /BOOT/IMGS/ADDS.IMG
boot
title ISO安装XP/03
#两次启动所用菜单相同 第一次需按I启动ISO第二次需按回车键从硬盘启动继续安装
RUN firadisk /WIN$.ISO
boot
title 手动输入文件路径(支持FIRADISK参数)
#即输入 FIRADISK /isofile 会加载firadisk驱动输入 /isofile 不会加载firadisk驱动
RUN
boot
title 手动输入文件路径(仅ISO,默认加载FIRADISK驱动)
#只能执行ISO文件,不能执行IMG等文件,默认加载FIRADISK
RUN FIRADISK
boot
#自动根据/BOOT/IMGS/目录下的文件生成菜单.(固定用法) (chenall的创新)
#由sratlf修改为根据任意目录下的文件生成菜单.
#仍以/BOOT/IMGS/目录为例,注意目录最后需以/结尾,否则会出错
title auto make menu for /BOOT/IMGS/
RUN automenu /BOOT/IMGS/
configfile (md)0x3000+0x10
title 生成IMG目录文件列表
#find --set-root (bd)/BOOT/IMGS
RUN (bd)/boot/imgs/.input
configfile (md)0x3000+0x10
title 转入命令行模式
commandline
title 重启计算机
reboot
title 关闭计算机
halt

zxw 发表于 2011-1-7 16:18:28

回复 #219 717758565 的帖子

将目录/boot/截个图上来。
另详细汇报你的启动设备。

tubaozi 发表于 2011-1-7 16:24:24

说明一下:
title 生成IMG目录文件列表
#find --set-root (bd)/BOOT/IMGS
RUN (bd)/boot/imgs/.input
configfile (md)0x3000+0x10
这条用于测试ZXW大的RUN。

title auto make menu for /BOOT/IMGS/
RUN automenu /BOOT/IMGS/
configfile (md)0x3000+0x10
这条用于测试sratlf 大的RUN。

zxw 发表于 2011-1-7 16:26:50

原帖由 tubaozi 于 2011-1-7 16:17 发表 http://bbs.wuyou.net/images/common/back.gif

RUN (bd)/boot/imgs/.input
configfile (md)0x3000+0x10

如果是我的那个脚本,生成列表可以简化为:

RUN
boot


如果是其它路径,如/imgs/:

RUN /imgs/
boot

zxw 发表于 2011-1-7 16:29:10

原帖由 tubaozi 于 2011-1-7 16:24 发表 http://bbs.wuyou.net/images/common/back.gif
title auto make menu for /BOOT/IMGS/
RUN automenu /BOOT/IMGS/
configfile (md)0x3000+0x10
这条用于测试sratlf 大的RUN。
用我的脚本生成菜单,可以这样写:

RUN /BOOT/IMGS/.automenu
configfile (md)0x3000+0x10

tubaozi 发表于 2011-1-7 16:53:26

原帖由 zxw 于 2011-1-7 16:29 发表 http://bbs.wuyou.net/images/common/back.gif

用我的脚本生成菜单,可以这样写:


回Z大:
改成这样,菜单及列表均成功。

title 生成IMGS目录菜单
RUN /BOOT/IMGS/.automenu
configfile (md)0x3000+0x10

title 生成IMG目录文件列表
RUN
boot

谢谢指教!

717758565 发表于 2011-1-7 17:26:29

zxw你好这是我的全部文件我只要换成上一个版本的run就一切都正常了


这是menu.lst

用虚拟机测试的


[ 本帖最后由 717758565 于 2011-1-7 17:36 编辑 ]

幸运的草 发表于 2011-1-7 19:57:29

回Z大:
    用你7日下午更新版,我这样调用:
    run firadisk /boot/imgs/xyly.iso,在简易启动测试器中测试成功,出现,但在实机中测试确出现英文提示,大意是“按I键启动ISO,10秒后从硬盘启动”,但无论是按I键还是10秒后都从硬盘启动,根据不能从U盘启动。
    如果这样调用:run /boot/imgs/xyly.iso,则出现“Load Ramdisk Imges......”,然后就不动了,启动29M的PE需要12分钟,是典型的不加--mem参数的启动方式。我把RUN模块中:iso段中的map %2.......||map --mem ........这一句的%2前加上--mem或者将||语句前后调一个位置,这样调用run /boot/imgs/xyly.iso就正常了,出现,一分钟多一点就启动完毕。
不知道为什么会这样?

717758565 发表于 2011-1-7 21:43:32

问题找到了是grldr的问题2011.1.6有两个版本我开始用的是是2011.1.6grub4dos-0.4.5b的版本后来我用了grub4dos-0.4.5b-2011-01-06-fix.7z就一切都正常了你们也可能用的是fix的版本                                                                再次感谢zxw和tubaozi

717758565 发表于 2011-1-7 21:44:22

问题找到了是grldr的问题2011.1.6有两个版本我开始用的是是2011.1.6grub4dos-0.4.5b的版本后来我用了grub4dos-0.4.5b-2011-01-06-fix.7z就一切都正常了你们也可能用的是fix的版本                                                                再次感谢zxw和tubaozi

zxw 发表于 2011-1-7 22:04:20

回复 #227 幸运的草 的帖子

你要启动的是ramos,不适用这一情形,可能需要映射成hd加载ramos内的引导文件如ntldr,你可以试试sratlf的run脚本。
可能写法是这样的:
map --mem /boot/imgs/xyly.iso (hd1)
map (hd1) (hd0)
map --hook
rootnoverify (hd0,0)
chainloader /ntldr

[ 本帖最后由 zxw 于 2011-1-7 22:11 编辑 ]

zxw 发表于 2011-1-7 22:14:53

回复 #229 717758565 的帖子

找到问题了就好,其实我更新日志处有链接。

幸运的草 发表于 2011-1-8 09:00:09

回复 #230 zxw 的帖子

回Z大:
 不是,是通过RUN调用,现网上两个版本的RUN都是这样,一是加载FIRADISK后不能从U盘启动,但在简易启动测试器中测试却成功。反正我也找不到加载与不加载有什么区别,二是,我将你的RUN模块中的:iso段中的map %2......||map --mem......这一句中的%2前加上--mem或者将||前后语句倒位后就正常了,我不知道这两个语句的关系,反正这样子调整后启动就会出现,正常了。
  我不知道ramos是什么,反正不用RUN模块调用ISO不就是map --mem的格式么!老的菜单调用没什么问题,主要是RUN模块调用ISO的问题。
  别的人用RUN模块调用ISO没有问题?或者你自己使用就正常?如果是这样就算了,反正我自己已经解决了,主要是想向你报告一下,看有没有什么解决的方法。

[ 本帖最后由 幸运的草 于 2011-1-8 09:05 编辑 ]

Plantsoot 发表于 2011-1-8 09:39:03

回复 #231 zxw 的帖子

自动生成菜单式列表(手工输入任意目录),我改造的写法是 RUN   [],现在不用改造了。
刚测试了下,新版的可以手工输入目录了,呵呵,是这次更新的还是以前就可以啊?

发现一个地方写法奇怪:chainloader --fOrce %~pnx1

另外 加载MENU.0PE这个特殊的写法的菜单也加上吧,我就不用每次改造了了。和类似MENU.LST放一起。

[ 本帖最后由 Plantsoot 于 2011-1-8 09:44 编辑 ]

幸运的草 发表于 2011-1-8 10:06:03

回Z大:
  要生成U盘可见区任意目录的列表或菜单,要怎样写?比如可见区UDDIY目录。
  我这样调用run ()/uddiy/.input或run ()/uddiy/.automenu,如果刚启动第一次就调用的话,就会成功,但如果第一次调用run .input或run .automenu后,即调用默认的(ud)/boot/imgs下的列表或菜单后,再运行上面的调用就会提示找不到文件,是不是可以这样写?run (hd1,0)/uddiy/.input,我的UD区是zip模式。

[ 本帖最后由 幸运的草 于 2011-1-8 11:26 编辑 ]

sratlf 发表于 2011-1-8 10:46:38

回复 #233 Plantsoot 的帖子

可以先用我的代替RUN lst /0PE/MENU.0PE

Plantsoot 发表于 2011-1-8 11:19:30

回复 #235 sratlf 的帖子

我已经参考您的RUN改造了zxw的RUN,呵呵,我的合盘盗用了sratlf兄和zxw的作品,别怪我哦……

sratlf 发表于 2011-1-8 11:38:27

回复 #236 Plantsoot 的帖子

没事还希望有更多人使用呢

@幸运的草

用我的RUN用下面的菜单试下
RUN /boot/imgs/xyly.iso --mem

还有我一直不理解加载firadisk后你为什么要从U盘启动

10提示后从硬盘启动是给iso安装系统准备的是只寻找本地硬盘上的/ntldr文件启动

[ 本帖最后由 sratlf 于 2011-1-8 11:47 编辑 ]

717758565 发表于 2011-1-8 11:56:24

我也想知道怎样生成可见分区目录列表,应该怎么写代码请各位大大指教
                                                                                                      谢了

幸运的草 发表于 2011-1-8 15:51:59

回复 #237 sratlf 的帖子

不好意思,起初只是想使用RUN模块调用ISO文件,只要测试成功,就可以放弃原来的菜单写法了。看了RUN上面的介绍,调用ISO时要加载FIRADISK,我并没有理解为什么要这样,只想是RUN调用ISO文件所要求的,于是就这样写了,我的ISO文件是放在UD区的,不从U盘启动那要怎样启动?
 看了S大#237的帖子,才知道根据就是理解错了。
 原菜单是这样写的:
 map --mem (ud)/boot/imgs/xyly.iso (0xff)
 map --hook
 chainloader (0xff)
  改成RUN模块时我这样调用run /boot/imgs/xyly.iso 启动时就是不带--mem参数的启动方式,是直接从磁盘启动,速度非常慢,经查看两位大大的RUN模块,发现是由于
:isofile
map %2 %1 (0xff) || map --mem %1 (0xff)这一句起关键作用,我把它改成map --mem %2 %1 (0xff) || map --mem %1 (0xff)或map --mem %1 (0xff)||map %2 %1 (0xff)就成功调用,和老菜单调用一样,但我不确定这样修改会不会引起其他的错误。
 看了S大的介绍,S大的RUN可以这样调用:run /boot/imgs/xyly.iso --mem,经虚拟机测试成功。
 Z大的RUN这样调用不成功,Z大的RUN怎样写才调用后与原菜单是一样的效果?
 请S、Z两位大大解答.

[ 本帖最后由 幸运的草 于 2011-1-8 16:09 编辑 ]

sratlf 发表于 2011-1-8 16:50:38

回复 #239 幸运的草 的帖子

其实加载iso文件最开始的写法是这样的map %1 (0xff) || map --mem %1 (0xff)

目的是对iso文件先尝试直接映射失败后再映射到内存中但是后来有人反馈这样的话iso安装系统失败

因为加载firadisk驱动要求iso必须map到内存中所以改成了map %2 %1 (0xff) || map --mem %1 (0xff)

其中%2是为了--mem准备的这样加载firadisk驱动后加载iso时就变成执行map --mem %1 (0xff) || map --mem %1 (0xff)   这样就肯定是map到内存了

自己修改的话修改成map --mem %1 (0xff)   只此一句就可以了缺点就是所有的iso都会map到内存启动时间较长(对你是例外,但是iso格式的dos工具就会多花很多时间)

你也可以不改用我那个RUN对必须要求map到内存的iso就用 RUN /isofile --mem命令格式普通的就RUN /isofile就可以了
页: 1 2 3 4 5 6 7 [8] 9 10 11 12 13 14 15 16 17
查看完整版本: [20150128]自动列表·自动菜单·数字启动