无忧启动论坛

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

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

    [复制链接]
1#
发表于 2010-12-22 01:36:38 | 显示全部楼层

测试运行不正常

1、没有你的彩色字符。
2、输入数字回车后启动不了相应的文件 如下图




title [06] test1
RUN
configfile (md)0x3000+0x10

title [07] test2
RUN /boot/imgs/.input
configfile (md)0x3000+0x10
这俩菜单都不行


遍历完文件后就退到grub4dos命令行了。

可否把您的菜单发来学习下。

[ 本帖最后由 2010lifefx 于 2010-12-22 01:38 编辑 ]
回复

使用道具 举报

2#
发表于 2010-12-22 01:41:20 | 显示全部楼层

回复 #7 chenall 的帖子

你好!

我没有加载背景图。
fontfile (bd)/boot/grub/fonts
terminal console
graphicsmode 0x6A
terminal graphics
foreground ffffff
background 005090
只有上面的设置。用的中文版。加了中文字体。

反复试了下
fontfile (bd)/boot/grub/fonts
terminal console
graphicsmode 0x6A
terminal graphics
原来有了这部分就没彩色了。

[ 本帖最后由 2010lifefx 于 2010-12-22 01:50 编辑 ]
回复

使用道具 举报

3#
发表于 2010-12-22 01:52:07 | 显示全部楼层

回复 #9 chenall 的帖子

嘿嘿!不好意思。有点漏神。呵呵。不过这个run我这里不能正常运行。

1、彩色出来了
2、运行还是不正常



[ 本帖最后由 2010lifefx 于 2010-12-22 01:56 编辑 ]
回复

使用道具 举报

4#
发表于 2010-12-22 02:12:28 | 显示全部楼层

回复 #11 chenall 的帖子

恩,可以了。按你说的改了。谢谢!


这个run好。改了名字还可以用。

sratlf那个RUN改了名字就要去修改RUN内容才能正常生成菜单。

[ 本帖最后由 2010lifefx 于 2010-12-22 02:26 编辑 ]
回复

使用道具 举报

5#
发表于 2010-12-22 11:19:17 | 显示全部楼层

回复 #14 sratlf 的帖子

谢谢,我去改下试试。
回复

使用道具 举报

6#
发表于 2010-12-22 11:36:03 | 显示全部楼层

测试出现新的问题。

测试出现新的问题。

如果列表中的文件不是img和iso。如果输入错误就要重启才行。

1、文件列表如下 (6号文件是一文本文件)

2、输入6回车后出现下面错误提示

3、然后就到了命令行

这个问题不知道能解决不。
回复

使用道具 举报

7#
发表于 2010-12-22 16:13:35 | 显示全部楼层
原帖由 zxw 于 2010-12-22 14:43 发表
更新:支持在非文本模式下显示彩色字符。


这个好,有彩色了。呵呵

还有个小问题。就是文件列表对齐问题。
我这里运行如图!


@ sratlf zxw

我是属于傻瓜用户类型的。完全是拿来主义的。

里面内容只能猜测着改。呵呵!

顺便请教个问题
是terminal console这个语句使得在非文本模式下显示彩色么?

[ 本帖最后由 2010lifefx 于 2010-12-22 16:17 编辑 ]
回复

使用道具 举报

8#
发表于 2010-12-22 16:23:29 | 显示全部楼层
原帖由 zxw 于 2010-12-22 16:15 发表
你重新下载最新版,将
WENV check "${t}""3"
改为:
WENV check "${t}""2"
试试下。



还是不齐,

我决定改成1用。哈哈
回复

使用道具 举报

9#
发表于 2010-12-22 17:53:37 | 显示全部楼层
原帖由 jianliulin 于 2010-12-22 17:14 发表
文件名可以用中文吗  .


可以用中文,就是乱码。哈哈

wenv也好 批处理也好 还是用的grub4dos命令行

grub4dos命令行不支持中文,所以应该不支持中文吧。
回复

使用道具 举报

10#
发表于 2010-12-22 18:00:41 | 显示全部楼层
大概、可能、或许、貌似、也许,把这两个RUN弄成 WENV的一个run命令不知道好不好。
回复

使用道具 举报

11#
发表于 2010-12-23 00:57:28 | 显示全部楼层
原帖由 zxw 于 2010-12-22 20:47 发表
更新:
  1.部分纠正超长文件名列表未能对齐的bug
  2.部分代码优化。



哈哈,我这个长文件名一直在捣乱。部分对齐了。
回复

使用道具 举报

12#
发表于 2010-12-23 18:08:54 | 显示全部楼层
新版有问题。停在下面的画面不动了。



键盘鼠标操作没反应
回复

使用道具 举报

13#
发表于 2010-12-23 18:17:53 | 显示全部楼层

回复 #44 zxw 的帖子

问题依旧。还需要你辛苦了。呵呵
回复

使用道具 举报

14#
发表于 2010-12-24 11:37:35 | 显示全部楼层
新版的我用记事本打开怎么是乱码?
回复

使用道具 举报

15#
发表于 2010-12-24 12:08:23 | 显示全部楼层
晕倒原来是压缩了两层。第一层解出来的run还是个压缩文件

不过我这里还是不能正常文件列表。

真机测试问题一样。
回复

使用道具 举报

16#
发表于 2010-12-24 13:03:00 | 显示全部楼层
分段替换了下。可以确定是:.autolist段的问题。

用旧版的
:.autolist
WENV check "#.txt#"=="#%~x1#" && goto :eof
WENV check "%~x1"=="" && goto :eof
WENV calc i++
WENV calc tt++
WENV set tlen=%~1
WENV check "${tt}"<>"3" ]]& set ttn=-n ]]& set ttm=t ]]! reset tt*
WENV check ${tlen,?}<=12 ]]| reset ttm
WENV check ${tlen,?}>=25 ]]& reset t*
WENV set N${i}=%~1 ]]& call echo -e ${ttn} \t$[0006]${i}$[0007]. $[0002]%~1\${ttm}
goto :eof

替换新版的
:.autolist
WENV check "%~x1"==".TXT" && goto :eof
WENV check "%~x1"=="" && goto :eof
WENV (calc i++ ; calc ij++ ; set tnn=%~1 ; set N${i}=%~1 ; reset trt)
WENV calc tln=${tnn,?}
WENV calc tls=${tln}+${i,?}+2
WENV check "${ij}"=="1" ]]& set tlt=\t ]]! reset tlt
wenv calc ik=tls%%24
wenv calc ij=tls/24+ij
WENV calc tbl=ij*-24-tln+94
WENV calc ttn=tls%%24/8*-1+3
WENV for /l %%i in (1,1,${ttn}) do set trt=$${trt}\t
WENV check "${ik}"=="0" ]]& reset trt ]]& calc ij=tls/-24+ij
WENV check "${ij}">="3" ]]& call checkrange 1:22 calc ${tbl} ]]& reset ij ]]& set trt=\n
WENV check "${ij}">="3" ]]& call checkrange 23:-1 calc ${tbl} ]]& set tlt=\n\t ]]& set ij=1
WENV call echo -e -n ${tlt}$[0006]${i}$[0007]. $[0002]%~1${trt}
goto :eof

可以显示列表可以引导文件。

尝试读代码排错,读不懂!!!
回复

使用道具 举报

17#
发表于 2010-12-24 13:32:19 | 显示全部楼层
WENV for /l %%i in (1,1,${ttn}) do set trt=$${trt}\t

这行注释掉就可以显示列表。当然是堆在一起的列表


修改就不会了。的慢慢尝试。

为什么你那里行我这里就不行呢。

wenv和grub4dos都是新版的
回复

使用道具 举报

18#
发表于 2010-12-24 14:29:13 | 显示全部楼层
原帖由 zxw 于 2010-12-24 13:46 发表
wenv 是用的chenall还是tuxw的?

你把:WENV calc ttn=tls%%24/8*-1+3
改为:WENV calc ttn=tls/8*-1+3
试试,估计不行。

算了,我还是少用for为妙,估计是内存的关系。


试了,不行。

我用的是tuxw修改的 2010-12-14这个WENV

胡乱改发现的

好像是set trt=$${trt}\t这个语句的问题。

改成set trt=${trt}\t能显示列表,但是一堆那种。 多了一个$就不出列表死掉了。

[ 本帖最后由 2010lifefx 于 2010-12-24 14:31 编辑 ]
回复

使用道具 举报

19#
发表于 2010-12-24 14:39:11 | 显示全部楼层
原帖由 zxw 于 2010-12-24 11:52 发表
我这里测试没有问题。
108914



还有为啥你的带文件夹我的文件夹下面的不出来呢?
回复

使用道具 举报

20#
发表于 2010-12-24 15:04:38 | 显示全部楼层

回复 #73 黑色蛋挞 的帖子

确实啊。不加 .input反而正常了。有文件列表了。




[ 本帖最后由 2010lifefx 于 2010-12-24 15:07 编辑 ]
回复

使用道具 举报

21#
发表于 2010-12-24 15:09:29 | 显示全部楼层
原帖由 zxw 于 2010-12-24 15:06 发表

这样也行?这是一个bug


不知道啥BUG,反正正常了。哈哈

title [06] /IOS/input
/BOOT/GRUB/BAT/BAT /ISO/.input
boot

title [07] /ISO/
/BOOT/GRUB/BAT/BAT /ISO/
boot

6不行,7行

[ 本帖最后由 2010lifefx 于 2010-12-24 15:10 编辑 ]
回复

使用道具 举报

22#
发表于 2010-12-24 15:31:07 | 显示全部楼层

WENV check "%~nx1"=="" && goto .input ! WENV set name=$U,%~nx1

这行后面加了行

WENV check "%~nx1"==".input" && goto .input ! WENV set name=$U,%~nx1

.input也可以了。

=。=

查找了。你没有“.input”的判断。能进去才是BUG,哈哈

[ 本帖最后由 2010lifefx 于 2010-12-24 15:37 编辑 ]
回复

使用道具 举报

23#
发表于 2010-12-24 16:12:33 | 显示全部楼层
原帖由 zxw 于 2010-12-24 15:56 发表
call call :%~x1 ${path}${name}
或者goto :%~x1 都可以进去。


call call :%~x1 ${path}${name}

%~x1是输入的参数?还是RUN?

如果是RUN 那就变成死循环了 一直调用 RUN /path/.input

goto :%~x1这个语句在RUN中没找到。

%~x1是输入的参数?还是RUN?

[ 本帖最后由 2010lifefx 于 2010-12-24 16:15 编辑 ]
回复

使用道具 举报

24#
发表于 2010-12-24 16:59:23 | 显示全部楼层
call call :%~x1 ${path}${name}
这个读懂了。

我用
wenv echo 和 “$Input”命令单步执行 得到如下结果

通过call call :.input /path/.input

进入.input分支后在第一次执行到:.autolist分支的WENV for /l %%i in (1,1,${ttn}) do set trt=$${trt}\t 行时 系统死掉。

将set trt=$${trt}\t换掉。例如换成“set trt=\t” 这个for循环能正常执行。

通过goto .input

进入.input分支后。全部一切正常。
回复

使用道具 举报

25#
发表于 2010-12-28 11:13:56 | 显示全部楼层

回复 #108 my9823 的帖子

貌似不行。wenv不支持中文。
回复

使用道具 举报

26#
发表于 2010-12-28 11:28:39 | 显示全部楼层

测试出现新的问题。

每次用完你这个列表 U盘就出现个 莫名文件夹。删之不掉

看了下里面的内容都是你这个RUN中的字段命名的。



以我的水平必须格式化U盘才能去掉。

16GU盘这个文件夹显示有100多G

QQ截图未命名.png (21.21 KB, 下载次数: 166)

QQ截图未命名.png
回复

使用道具 举报

27#
发表于 2010-12-28 11:40:35 | 显示全部楼层
具体过程

1、用run /IOS/.input 命令生成菜单
2、引导一个win7pe.iso (已经确认这个PE没问题。直接用grub菜单启动没有问题。)
3、关机
4、就出来了这个文件夹。可以改名,但删除不掉。
回复

使用道具 举报

28#
发表于 2010-12-28 12:48:02 | 显示全部楼层
@tuxw

我的这个win7pe确实会生成回收站。
正常启动生成的回收站,关机后可以删掉。并且是个回收站的图标。
但是用 这个RUN 生成的这个名字类似回收站的文件夹里面有很多以RUN文件中字段命名的文件夹和文件。并且删除不掉这个名字类似回收站的文件夹,把U盘挂ubuntu下面也是删除不掉。而且显示大小是100多G而我的U盘是16G的FAT分区只有8G

@chenall
我这里测试觉得应该不是grub的问题。
1217版本也出现这个情况当时以为有什么病毒。没有留意文件夹中的内容。
这两天特意反复格式化U盘来测试这个问题。1217 以后的版本用这个RUN都出现这个情况。
我测试的时候是把那个版本检测的命令行注释掉

title [03] -- * Win7PE                                      ( 89MB)
map --mem (bd)/boot/imgs/firadisk00124.img  (fd1)
map --mem (md)0x6000+800 (fd0)
map --mem (bd)/ISO/Win7PE.iso (0xff)
map --hook
dd if=(fd1) of=(fd0) count=1
chainloader (0xff)
用上面的菜单启动这个win7pe没有问题,我想应该不是win7pe的问题。
回复

使用道具 举报

29#
发表于 2010-12-28 13:57:17 | 显示全部楼层
@sratlf

谢谢

确实,刚才就在尝试更改菜单。

发现去掉 那个img也可以引导。

map (bd)/ISO/Win7PE.iso (0xff)
map --hook
chainloader (0xff)
boot

现在改成这样引导了。

核心的东西不懂,都是东抄一下西抄一下的,尝试着乱改。呵呵!
回复

使用道具 举报

30#
发表于 2010-12-28 15:17:05 | 显示全部楼层

回复 #121 zxw 的帖子

我只是拿来主义。测试出BUG好现象。哈哈。

就是一直在格式化U盘
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-5-20 01:13

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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