中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS汉化世界 & 中文系统 (中文化室) » DOS环境下的Config中文菜单驱动程序Confect V4.0
« [1] [2] [3] [4] »
作者:
标题: DOS环境下的Config中文菜单驱动程序Confect V4.0 上一主题 | 下一主题
sanchuan
初级用户





积分 113
发帖 51
注册 2008-11-16
来自 武汉
状态 离线
『楼 主』:  DOS环境下的Config中文菜单驱动程序Confect V4.0


新帖见:
http://www.cn-dos.net/forum/viewthread.php?tid=45211&fpage=1




Confect.sys V4.0能够直接驱动中英文菜单,使用简便,只需一个CCDOS或UCDOS的汉字库文件就能在config中显示汉字。V4.0版的字库可以放在当前盘的根目录。

在Config.sys配置文件的开始部分,添加以下语句:

device=Confect.sys c:\dos\hzk16

如果Confect.sys不在根目录,则必须指明路径。上面语句中的hzk16,是CCDOS或UCDOS的汉字库文件,如果hzk16在根目录,则上面的语句可简写为:

device=Confect.sys

中文菜单部分以一行REM [SETTINGS]开始,以一行REN [CONFIG]结尾。

REM [SETTINGS]定义confect中文菜单块
set color=定义菜单项字符的颜色,背景色和提示信息的背景色,颜色值为0~7;
    set default=定义启动菜单默认的选项和等待的时间;
    set heading=定义启动菜单的标题头,允许定义四行标题头;
    set endnote=定义启动菜单的尾注,允许定义四行尾注;
    set confect=定义一个菜单主选项,允许定义八个主选项;
set ...
... ...( 菜单项 )
... ...
REM [...]( 配置块 )
... ...
REM [CONFIG]定义confect中文菜单块的结束
... ...( Config的公用配置 )


用set confect= 定义一个菜单项的一般格式为:
set confect=块名, 中文或英文的项目名



下面是一个最简单的Config配置的例子:

    device=Confect.sys
    SET PATH=C:\;C:\DOS;..;

    rem [SETTINGS]
    set color=7,0
    set default=1,30
    set heading: 计算机系统维护                         MSDOS 7.1
    set heading:===================================================
    set endnote:用↑或↓键移动亮条,或用 A、B、C、D ... 键选择主项
    set confect=restore,恢复计算机系统
    set confect=backup,备份计算机系统

    rem [restore]
    set exec=\dos\ghost.exe -clone,mode=pload,src=H:\WinC.gho:1,dst=1:1 -fx -sure

    rem [backup]
    set exec=\dos\ghost -clone,mode=pdump,src=1:1,dst=H:\WinC.gho -AUTO -z9 -sure -fx

    rem [CONFIG]

    device=\dos\himem.sys /testmem:off
    ......


    在autoexec.bat添加以下语句:

    goto %confect%
    ......
    :restore
    %exec%
    goto exit

    :backup
    %exec%
    goto exit



================================================================================

Confect菜单的拓展
1. 菜单提示
每一条菜单主项,可以添加一条提示信息,其定义格式如下:
set confect=块名, 中文或英文的项目名; 提示内容
上面是菜单主项定义的完整格式,注意等号、逗号和分号要用英文字符。
当移动亮条时,在菜单下方会出现对应主项的提示信息。
2. 子项,每一条主项下可以定义1~4条子项,其完整的定义格式如下:
set option=块名, 中文或英文的子项名称; 默认标志符
其中,默认标志符为 & ,表示该项为默认选中的子项。若省去 & ,则子项格式为:
rem option=块名, 中文或英文的子项名称

下面是一个主项和四个子项的示例:
set confect=restore,恢复计算机系统;忠告: 恢复系统将覆盖相应盘中的数据,请作好数据备份
set option=restoc,恢复C盘;&
set option=restod,恢复D盘;&
set option=restart,恢复后重启
set option=off,恢复后关机



================================================================================


一个完整的Config配置与批处理的实例

Config.sys 部分:

device=c:\dos\Confect.sys c:\dos\hzk16
SET PATH=C:\;C:\DOS;..;

rem [SETTINGS]
set color=7,0,4
set default=1,30
set heading:
set heading: 计算机系统维护                         MSDOS 7.1
set heading:===================================================
set endnote:用↑或↓键移动亮条,或用 A、B、C、D ... 键选择主项
set endnote:复选项用数字键设置(或清除),用 Enter 键确定。

set confect=restore,恢复计算机系统;忠告: 恢复系统将覆盖相应盘中的数据,请作好数据备份
set option=restoc,恢复C盘;&
set option=restod,恢复D盘;&
set option=restart,恢复后重启
set option=off,恢复后关机;&

set confect=backup,备份计算机系统;忠告: 备份系统前,应确保系统数据安全可靠
set option=backc,备份C盘
set option=backd,备份D盘
set option=restart,备份后重启;&
set option=off,备份后关机

set confect=DOS,进入DOS系统

set confect=RESTART,重新启动计算机

; [restore]
; [restoc]
set exec1=\dos\ghost.exe -clone,mode=pload,src=H:\WinC.gho:1,dst=1:1 -fx -sure
; [restod]
set exec2=\dos\ghost.exe -clone,mode=pload,src=H:\WinD.gho:1,dst=1:2 -fx -sure

; [backup]
; [backc]
set exec1=\dos\ghost -clone,mode=pdump,src=1:1,dst=H:\WinC.gho -AUTO -z9 -sure -fx
; [backd]
set exec2=\dos\ghost -clone,mode=pdump,src=1:2,dst=H:\WinD.gho -AUTO -z9 -sure -fx

; [dos]
device=\dos\oakcdrom.sys /D:mscd001
device=\dos\btcdrom.sys /D:mscd001
device=\dos\aspicd.sys /D:mscd001
devicehigh=\dos\ramdrive.sys /E 2048
; [RESTART]
set exec3=\dos\restart.com
; [off]
set exec4=\dos\off.com
; [CONFIG]

device=\dos\himem.sys /testmem:off
device=\dos\emm386.sys noems

dos=high,umb,auto
fcbshigh=4,0
fileshigh=30
buffershigh=30,0
lastdrivehigh=32
stackshigh=9,256


Autoexec.bat 部分:

@ECHO off
path c:\dos;c:\
PROMPT $P$G
cls

goto %confect%

:restore
%exec1%
%exec2%
%exec3%
%exec4%
goto exit

:backup
attrib -h -s hiberfil.sys
attrib -h -s pagefile.sys
del hiberfil.sys
del pagefile.sys
%exec1%
%exec2%
%exec3%
%exec4%
goto exit

:restart
C:\DOS\restart.com

:off
C:\DOS\off.com

:dos
LH c:\dos\MSCDEX.EXE /D:mscd001 /L:D

:exit






[ Last edited by sanchuan on 2009-1-4 at 20:39 ]

   此帖被 +6 点积分     点击查看详情   
评分人:【 雨露 分数: +6  时间:2008-11-25 11:09


2008-11-21 13:43
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
xugaohui
高级用户




积分 774
发帖 293
注册 2003-4-16
来自 湖北仙桃
状态 离线
『第 2 楼』:  

马上下载后试用了一下。比论坛上其它中文菜单驱动使用都要方便的多。最主要是它可以使用ccdos的hzk16.目前只有ccdos的hzk16才能有数码0-9。
还可以使用其它点阵的字体的
如图:

可以做出很酷的菜单
yaya的菜单驱动也不错,但是显示汉字用的16j.dot使用不方便修改。还有一些兼容性问题。如果配合本是的显示中文技术,编辑config.sys又不方便。
还没有试楼主这个软件的功能。如果能做到ConfigS.Mnu那么强大就好了。
汉字中文有空竖线。
这么好的东西现在才发布出来,真是太可惜了。
在菜单中不支持F5 F8 shift+F8热键。
需要编辑autoexec.bat,现在是使用变量%confect%,不是原来的config.sys
不能使用acsii制表符,会显示成中文字符。
rem endnote好像根本不起作用。没看到显示在那里。
标题总是被转换成大写字符了。
每一行菜单项前面总是有ABC...字符,而且是在第一列显示的,如果能改成当光带在那一行时就在前面显示一个字符,如一个指向右的手形。

希望楼主能单独出一个用于在config.sys显示中文的驱动,这样我们可以使用其它菜单驱动,比如用yaya的ConfigS.Mnu 1.00,目前config.sys中显示中文还是你这个比较灵活。

[ Last edited by xugaohui on 2008-11-21 at 18:18 ]



下载
09年7月7日 更新
感谢网友 囧HQY 提供空间
2008-11-21 14:49
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
wuchan
初级用户





积分 119
发帖 59
注册 2008-11-21
状态 离线
『第 3 楼』:  

我怎么试用了不成工,无法引导原来的config可以引导的

2008-11-21 15:46
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
wuchan
初级用户





积分 119
发帖 59
注册 2008-11-21
状态 离线
『第 4 楼』:  

哦,需要将原来的autoexec.bat中的文件移植到config中.

2008-11-21 15:50
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
xugaohui
高级用户




积分 774
发帖 293
注册 2003-4-16
来自 湖北仙桃
状态 离线
『第 5 楼』:  

config.sys,autoexec.bat只需要很小的改动.请教楼上的autoexec.bat怎么移植到config.sys中?



下载
09年7月7日 更新
感谢网友 囧HQY 提供空间
2008-11-21 16:09
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
wuchan
初级用户





积分 119
发帖 59
注册 2008-11-21
状态 离线
『第 6 楼』:  

我也没有改清楚..我的改成这样无法引导.正在查找呢
config文件:
device=confect.sys

REM [SETTINGS]
rem color=15, 1
rem default=1, 3
rem heading: DOM 和 GHOST 文件制做系统        
rem heading:===================================================
rem confect=32_128_CF_2G_M,  DOM /CF 烧写制作
rem confect=2G_A, 2G/4G -A 芯片的格式化
rem confect=HD, 硬盘母盘制作
rem confect=GHOFILE, 母盘镜像文件回传制作
rem confect=CLEAN, 退出到DOS
REM [CONFIG]


rem [32_128_CF_2G_M]

rem [2G_A]

rem [HD]

rem [GHOFILE]

rem [CLEAN]

[COMMON]
buffers=40,0
files=20
break=on
lastdrive=Z
dos=high,umb
device=himem.sys /testmem:OFF


auto 文件:
GOTO %CONFECT%


:32_128_CF_2G_M
CLS
REM #################################################################
CALL ACFDOWN.BAT
goto end



:2G_A
CLS
@REM #################################################################
CALL A2GDOWN.BAT
goto end


:HD
CLS
@REM ##################################################################
CALL HDdown.BAT
goto end


:GHOFILE
CLS
@REM ###################################################################
CALL GHOMAKE.BAT
goto end

:CLEAN
goto END

:END
path=c:\nc;c:\nc\nc



我改完后,就无法引导了.

2008-11-21 16:44
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
xugaohui
高级用户




积分 774
发帖 293
注册 2003-4-16
来自 湖北仙桃
状态 离线
『第 7 楼』:  

回楼上的。你的config.sys中有[common],所以不行。
另外rem endnote:        定义启动菜单的尾注,允许定义四行尾注;还没有看出是显示在那里了。

[ Last edited by xugaohui on 2008-11-21 at 18:07 ]



下载
09年7月7日 更新
感谢网友 囧HQY 提供空间
2008-11-21 17:17
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
wuchan
初级用户





积分 119
发帖 59
注册 2008-11-21
状态 离线
『第 8 楼』:  

照你说的我改了改..还是不行..
在启动时老是提示 "label not found"
我想应该是auto文件出错了

2008-11-21 17:44
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
sanchuan
初级用户





积分 113
发帖 51
注册 2008-11-16
来自 武汉
状态 离线
『第 9 楼』:  

2楼的朋友,关于汉字显示中空,是本人的疏忽,发错了压缩文件。

你可重新在一楼下载。



三川一笑
2008-11-21 21:31
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
sanchuan
初级用户





积分 113
发帖 51
注册 2008-11-16
来自 武汉
状态 离线
『第 10 楼』:  


6楼的朋友,REM [CONFIG]应该放在[COMMON]的位置上。Confect只处理REM [SETTINGS]开始,至REM [CONFIG]结尾的部分。[COMMON]块,除非你在菜单项中有定义,并且放在REM [CONFIG]之前。



三川一笑
2008-11-21 21:44
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
xiaoyunwang
高级用户




积分 939
发帖 374
注册 2007-10-17
来自 湖南张家界
状态 离线
『第 11 楼』:  

支持楼主继续更新和完善!




生命源头 www.shengmingyt.cn
2008-11-21 22:49
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
xugaohui
高级用户




积分 774
发帖 293
注册 2003-4-16
来自 湖北仙桃
状态 离线
『第 12 楼』:  

重下载后汉字没有中空了。
菜单功能还有些不足,如每项菜单总是从第一列开始显示的。不能设置缩近多少空格
不能设置选中某行菜单时在前面前一个字符(指右向小手图形),因为你的每一行菜单都相隔一个空行。如果选择一项菜单时前面没有一个字符的话,就太单调了。
菜单字符内不能大小写转换,所有的都是大写了。期待它的功能能超过ConfigS.Mnu 1.00
看了confec.sys,发现它只能从c:\读取hzk16.如果引导盘是a:就不方便了,建议去掉这个限制。
你的这个软件显示中文实在太方便了,支持楼主。

[ Last edited by xugaohui on 2008-11-21 at 23:31 ]



下载
09年7月7日 更新
感谢网友 囧HQY 提供空间
2008-11-21 23:22
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
wuchan
初级用户





积分 119
发帖 59
注册 2008-11-21
状态 离线
『第 13 楼』:  

[restoc]
set exec1=\dos\ghost.exe -clone,mode=pload,src=H:\WinC.gho:1,dst=1:1 -fx -sure
; [restod]
set exec2=\dos\ghost.exe -clone,mode=pload,src=H:\WinD.gho:1,dst=1:2 -fx -sure

有个疑问,像楼主的示范说明中。是不是每个菜单只能执行单个指令,无法顺序执行一批的指令。还有就是在auto中也要指定到对应的 set ××××下。。
不知道有没有理解错误。

2008-11-22 21:18
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
sanchuan
初级用户





积分 113
发帖 51
注册 2008-11-16
来自 武汉
状态 离线
『第 14 楼』:  


每个块可以根据具体情况设置多条指令。

我在示例中设置的环境变量 exec ,实际是一条命令,在auto中只需要以 %exec% 的形式出现,DOS系统就会解释为命令去执行。

因为Confect的子项是可选的,所以在auto中,对应主项下出现:
%exec1%
%exec2%
%exec3%
%exec4%
若环境变量的值不为空——即在Config菜单中选择的项,auto就会执行相应的命令;反之,没有选择的项,其环境变量值为空,DOS自然就作为空处理了。

谨此回复13楼



三川一笑
2008-11-22 23:07
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
woshiwo99
新手上路





积分 13
发帖 6
注册 2007-3-30
状态 离线
『第 15 楼』:  

好东西啊。。。抽空研究下

2008-11-23 19:49
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
« [1] [2] [3] [4] »
请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: