中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-06-23 17:24
中国DOS联盟论坛 » DOS汉化世界 & 中文系统 (中文化室) » DOS环境下的Config中文菜单驱动程序Confect V4.0 查看 10,257 回复 52
楼 主 DOS环境下的Config中文菜单驱动程序Confect V4.0 发表于 2008-11-21 13:43 ·  中国 湖北 武汉 电信
初级用户
★★
积分 113
发帖 51
注册 2008-11-16 23:24
17年会员
UID 131196
性别 男
来自 武汉
状态 离线

新帖见:
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 开始,以一行REN 结尾。

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


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



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

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

rem
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
set exec=\dos\ghost.exe -clone,mode=pload,src=H:\WinC.gho:1,dst=1:1 -fx -sure

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

rem

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
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,重新启动计算机

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

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

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

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 ]
本帖最近评分记录 (共 1 条) 点击查看详情
评分人分数时间
雨露 +6 2008-11-25 11:09
2 发表于 2008-11-21 14:49 ·  中国 广东 揭阳 电信
高级用户
★★
积分 774
发帖 293
注册 2003-04-16 00:00
23年会员
UID 1579
性别 男
来自 湖北仙桃
状态 离线
马上下载后试用了一下。比论坛上其它中文菜单驱动使用都要方便的多。最主要是它可以使用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 提供空间
3 发表于 2008-11-21 15:46 ·  中国 福建 福州 台江区 电信
初级用户
★★
积分 119
发帖 59
注册 2008-11-21 14:07
17年会员
UID 131656
性别 男
状态 离线
我怎么试用了不成工,无法引导原来的config可以引导的
4 发表于 2008-11-21 15:50 ·  中国 福建 福州 台江区 电信
初级用户
★★
积分 119
发帖 59
注册 2008-11-21 14:07
17年会员
UID 131656
性别 男
状态 离线
哦,需要将原来的autoexec.bat中的文件移植到config中.
5 发表于 2008-11-21 16:09 ·  中国 广东 揭阳 电信
高级用户
★★
积分 774
发帖 293
注册 2003-04-16 00:00
23年会员
UID 1579
性别 男
来自 湖北仙桃
状态 离线
config.sys,autoexec.bat只需要很小的改动.请教楼上的autoexec.bat怎么移植到config.sys中?
下载
09年7月7日 更新
感谢网友 囧HQY 提供空间
6 发表于 2008-11-21 16:44 ·  中国 福建 福州 台江区 电信
初级用户
★★
积分 119
发帖 59
注册 2008-11-21 14:07
17年会员
UID 131656
性别 男
状态 离线
我也没有改清楚..我的改成这样无法引导.正在查找呢
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



我改完后,就无法引导了.
7 发表于 2008-11-21 17:17 ·  中国 广东 揭阳 电信
高级用户
★★
积分 774
发帖 293
注册 2003-04-16 00:00
23年会员
UID 1579
性别 男
来自 湖北仙桃
状态 离线
回楼上的。你的config.sys中有,所以不行。
另外rem endnote: 定义启动菜单的尾注,允许定义四行尾注;还没有看出是显示在那里了。

[ Last edited by xugaohui on 2008-11-21 at 18:07 ]
下载
09年7月7日 更新
感谢网友 囧HQY 提供空间
8 发表于 2008-11-21 17:44 ·  中国 福建 福州 台江区 电信
初级用户
★★
积分 119
发帖 59
注册 2008-11-21 14:07
17年会员
UID 131656
性别 男
状态 离线
照你说的我改了改..还是不行..
在启动时老是提示 "label not found"
我想应该是auto文件出错了
9 发表于 2008-11-21 21:31 ·  中国 湖北 武汉 电信
初级用户
★★
积分 113
发帖 51
注册 2008-11-16 23:24
17年会员
UID 131196
性别 男
来自 武汉
状态 离线
2楼的朋友,关于汉字显示中空,是本人的疏忽,发错了压缩文件。

你可重新在一楼下载。
三川一笑
10 发表于 2008-11-21 21:44 ·  中国 湖北 武汉 电信
初级用户
★★
积分 113
发帖 51
注册 2008-11-16 23:24
17年会员
UID 131196
性别 男
来自 武汉
状态 离线

6楼的朋友,REM [CONFIG]应该放在[COMMON]的位置上。Confect只处理REM [SETTINGS]开始,至REM [CONFIG]结尾的部分。[COMMON]块,除非你在菜单项中有定义,并且放在REM [CONFIG]之前。
三川一笑
11 发表于 2008-11-21 22:49 ·  中国 广东 中山 电信
高级用户
★★★
积分 940
发帖 374
注册 2007-10-17 21:51
18年会员
UID 100011
性别 男
来自 湖南张家界
状态 离线
支持楼主继续更新和完善!

生命源头 www.shengmingyt.cn
12 发表于 2008-11-21 23:22 ·  中国 广东 揭阳 电信
高级用户
★★
积分 774
发帖 293
注册 2003-04-16 00:00
23年会员
UID 1579
性别 男
来自 湖北仙桃
状态 离线
重下载后汉字没有中空了。
菜单功能还有些不足,如每项菜单总是从第一列开始显示的。不能设置缩近多少空格
不能设置选中某行菜单时在前面前一个字符(指右向小手图形),因为你的每一行菜单都相隔一个空行。如果选择一项菜单时前面没有一个字符的话,就太单调了。
菜单字符内不能大小写转换,所有的都是大写了。期待它的功能能超过ConfigS.Mnu 1.00
看了confec.sys,发现它只能从c:\读取hzk16.如果引导盘是a:就不方便了,建议去掉这个限制。
你的这个软件显示中文实在太方便了,支持楼主。

[ Last edited by xugaohui on 2008-11-21 at 23:31 ]
下载
09年7月7日 更新
感谢网友 囧HQY 提供空间
13 发表于 2008-11-22 21:18 ·  中国 福建 福州 电信
初级用户
★★
积分 119
发帖 59
注册 2008-11-21 14:07
17年会员
UID 131656
性别 男
状态 离线
[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 ××××下。。
不知道有没有理解错误。
14 发表于 2008-11-22 23:07 ·  中国 湖北 武汉 电信
初级用户
★★
积分 113
发帖 51
注册 2008-11-16 23:24
17年会员
UID 131196
性别 男
来自 武汉
状态 离线

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

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

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

谨此回复13楼
三川一笑
15 发表于 2008-11-23 19:49 ·  中国 山东 烟台 联通
新手上路
积分 13
发帖 6
注册 2007-03-30 03:35
19年会员
UID 83346
性别 男
状态 离线
好东西啊。。。抽空研究下
论坛跳转: