无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
楼主: zxw
打印 上一主题 下一主题

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

    [复制链接]
211#
发表于 2011-1-7 12:18:29 | 只看该作者
zxw你好我刚才测试出现下面两种情况           GRUB4DOS是2022.1.6 WENV是2010.12.16

按回车出现下面这种情况

这个菜单没显示数字
回复

使用道具 举报

212#
发表于 2011-1-7 13:01:28 | 只看该作者
原帖由 zxw 于 2010-12-21 15:42 发表
chenall大侠帖子《GRUB4DOS 批处理脚本的简易应用》,动手diy了一下。

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


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



GRLDR、WENV、RUN都是最新的。
回复

使用道具 举报

213#
 楼主| 发表于 2011-1-7 13:27:18 | 只看该作者
@717758565、tubaozi :
晕,我这里测试正常。看来这种方法还不太稳当。最开始的方法虽最为稳当,但文件越多生成的变量越多,而grub4dos有60个变量的限制。

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

使用道具 举报

214#
 楼主| 发表于 2011-1-7 14:23:40 | 只看该作者
经排查,属本人粗心大意写错一句代码,已在一楼紧急更新。
已下载的坛友请重新下载。为此带来的不便,请多多包涵!!

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

使用道具 举报

215#
发表于 2011-1-7 15:43:22 | 只看该作者
zxw不好意思问题还是那样没改变,和tubaozi 兄说的是一样的现象,我的连数字都不显示他的还好

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

输入之后就是这样


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

使用道具 举报

216#
发表于 2011-1-7 15:51:18 | 只看该作者
原帖由 717758565 于 2011-1-7 15:43 发表
zxw不好意思问题还是那样没改变,和tubaozi 兄说的是一样的现象


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





回复

使用道具 举报

217#
发表于 2011-1-7 15:56:10 | 只看该作者

回复 #216 tubaozi 的帖子

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

使用道具 举报

218#
 楼主| 发表于 2011-1-7 15:59:45 | 只看该作者

回复 #215 717758565 的帖子

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

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

使用道具 举报

219#
发表于 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
title  automenu
RUN /boot/.automenu
title  automenu
run /boot/我把这里的加入imgs/还是一样
我在线等

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

使用道具 举报

220#
发表于 2011-1-7 16:17:58 | 只看该作者
原帖由 717758565 于 2011-1-7 15:56 发表
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 [01] 启动GHOST
RUN /BOOT/IMGS/XGHOST.IMG
boot
title [02] 启动PE
RUN /WXPE/SETUPLDR.BIN
boot
title [03] dos时代菜鸟工具箱
RUN /BOOT/IMGS/DTS.IMA
boot
title [04] dos时代菜鸟工具箱里的DiskGenius
#仅限dts.ima 117版,166版请自行修改write --offset=317为write --offset=419
RUN /BOOT/IMGS/DTS.IMA 1c
boot
title [05] DiskGenius
RUN /BOOT/IMGS/DG.IMG
boot
title [06] ADDS分区
RUN /BOOT/IMGS/ADDS.IMG
boot
title [07] ISO安装XP/03
#两次启动所用菜单相同 第一次需按I启动ISO  第二次需按回车键从硬盘启动继续安装
RUN firadisk /WIN$.ISO
boot
title [08] 手动输入文件路径(支持FIRADISK参数)
#即输入 FIRADISK /isofile 会加载firadisk驱动  输入 /isofile 不会加载firadisk驱动
RUN
boot
title [09] 手动输入文件路径(仅ISO,默认加载FIRADISK驱动)
#只能执行ISO文件,不能执行IMG等文件,默认加载FIRADISK
RUN FIRADISK
boot
#自动根据/BOOT/IMGS/目录下的文件生成菜单.(固定用法) (chenall的创新)
#由sratlf修改为根据任意目录下的文件生成菜单.
#仍以/BOOT/IMGS/目录为例,注意目录最后需以/结尾,否则会出错
title [10] auto make menu for /BOOT/IMGS/
RUN automenu /BOOT/IMGS/
configfile (md)0x3000+0x10
title [11] 生成IMG目录文件列表
#find --set-root (bd)/BOOT/IMGS
RUN (bd)/boot/imgs/.input
configfile (md)0x3000+0x10
title [12] 转入命令行模式
commandline
title [13] 重启计算机
reboot
title [14] 关闭计算机
halt
回复

使用道具 举报

221#
 楼主| 发表于 2011-1-7 16:18:28 | 只看该作者

回复 #219 717758565 的帖子

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

使用道具 举报

222#
发表于 2011-1-7 16:24:24 | 只看该作者
说明一下:
title [11] 生成IMG目录文件列表
#find --set-root (bd)/BOOT/IMGS
RUN (bd)/boot/imgs/.input
configfile (md)0x3000+0x10
这条用于测试ZXW大的RUN。

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

使用道具 举报

223#
 楼主| 发表于 2011-1-7 16:26:50 | 只看该作者
原帖由 tubaozi 于 2011-1-7 16:17 发表

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

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

RUN
boot


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

RUN /imgs/
boot
回复

使用道具 举报

224#
 楼主| 发表于 2011-1-7 16:29:10 | 只看该作者
原帖由 tubaozi 于 2011-1-7 16:24 发表
title [10] auto make menu for /BOOT/IMGS/
RUN automenu /BOOT/IMGS/
configfile (md)0x3000+0x10
这条用于测试sratlf 大的RUN。

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

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

使用道具 举报

225#
发表于 2011-1-7 16:53:26 | 只看该作者
原帖由 zxw 于 2011-1-7 16:29 发表

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


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

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

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

谢谢指教!
回复

使用道具 举报

226#
发表于 2011-1-7 17:26:29 | 只看该作者
zxw你好这是我的全部文件  我只要换成上一个版本的run就一切都正常了


这是menu.lst

用虚拟机测试的


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

使用道具 举报

227#
发表于 2011-1-7 19:57:29 | 只看该作者
回Z大:
    用你7日下午更新版,我这样调用:
    run firadisk /boot/imgs/xyly.iso,在简易启动测试器中测试成功,出现[0M/29M],但在实机中测试确出现英文提示,大意是“按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就正常了,出现[0M/29M],一分钟多一点就启动完毕。
  不知道为什么会这样?
回复

使用道具 举报

228#
发表于 2011-1-7 21:43:32 | 只看该作者
问题找到了是grldr的问题2011.1.6有两个版本我开始用的是是2011.1.6grub4dos-0.4.5b的版本后来我用了grub4dos-0[1].4.5b-2011-01-06-fix.7z就一切都正常了你们也可能用的是fix的版本                                                                再次感谢zxw和tubaozi
回复

使用道具 举报

229#
发表于 2011-1-7 21:44:22 | 只看该作者
问题找到了是grldr的问题2011.1.6有两个版本我开始用的是是2011.1.6grub4dos-0.4.5b的版本后来我用了grub4dos-0[1].4.5b-2011-01-06-fix.7z就一切都正常了你们也可能用的是fix的版本                                                                再次感谢zxw和tubaozi
回复

使用道具 举报

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

使用道具 举报

231#
 楼主| 发表于 2011-1-7 22:14:53 | 只看该作者

回复 #229 717758565 的帖子

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

使用道具 举报

232#
发表于 2011-1-8 09:00:09 | 只看该作者

回复 #230 zxw 的帖子

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

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

使用道具 举报

233#
发表于 2011-1-8 09:39:03 | 只看该作者

回复 #231 zxw 的帖子

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

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

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

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

使用道具 举报

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

使用道具 举报

235#
发表于 2011-1-8 10:46:38 | 只看该作者

回复 #233 Plantsoot 的帖子

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

使用道具 举报

236#
发表于 2011-1-8 11:19:30 | 只看该作者

回复 #235 sratlf 的帖子

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

使用道具 举报

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

使用道具 举报

238#
发表于 2011-1-8 11:56:24 | 只看该作者
我也想知道怎样生成可见分区目录列表,应该怎么写代码请各位大大指教
                                                                                                      谢了
回复

使用道具 举报

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

使用道具 举报

240#
发表于 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  就可以了
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-4-29 09:03

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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