Board logo

标题: Config中文菜单驱动Confect.sys (更新为4.3版) [打印本页]

作者: sanchuan     时间: 2008-12-17 23:22    标题: Config中文菜单驱动Confect.sys (更新为4.3版)

DOS环境下的Config中文菜单驱动程序Confect.sys V4.1

Confect.sys V4.1能够直接驱动中英文菜单,使用简便,只需一个CCDOS或UCDOS的汉字库文件就能在config中显示汉字。V4.1版的字库默认为当前盘的根目录,若在其它路径,则在Config.sys配置文件的开始部分,添加以下语句:

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

......  (详细说明见压缩包内文本文件)

特别说明:
1、Confect同原config.sys正文一样,未作严格语法检测。DOS 在处理原 Config 时,一律对错误的语句用一个 Z 替代而不作任何提示。因此,请按压缩包内说明定义confect驱动的菜单;
2、4.1版未对VGA调色板进行设置而利用字符属性选择字符集,故尾注字符较暗、提示字符较亮;
3、Confect默认为9点字符时钟,部分汉字会出现中间竖划粗或中缝的现象。若要使用8点字符时钟,可在set default语句的最后加参数8,即:
set default=1,30,8
4、各版本功能见压缩包内说明,建议使用更新的版本。         


Confect V4.3,放在76楼,点击Confect V4.3

Confect.sys V4.2 在28楼

[ Last edited by sanchuan on 2009-1-13 at 00:25 ]
附件 1: confect41.rar (2008-12-20 17:46, 4.7 K,下载次数: 443)

作者: julon     时间: 2008-12-18 07:27
支持楼主!
作者: supertom     时间: 2008-12-18 17:43
呵呵,楼主动作很快,强烈支持一下
作者: wuchan     时间: 2008-12-19 14:45
谢谢楼主了.一直关注着
作者: 本是     时间: 2008-12-19 16:00
RE: Sanchuan:
首先,你的软件很不错,菜单使用方式特别、方便,希望有更多的人使用。

你在说明文件中说
”特别说明:
1、为了在文本方式能够显示更多的汉字,在Confect中激活了两个字符集(理论上可以容纳128个不重复汉字)。由于利用字符属性选择字符集,故尾注字符较暗、提示字符较亮。“

这是因为调色板设置问题引起的,可以先保存原寄存器值,设置成前后8个寄存器值一样,最后不需要时恢复保存的值。
getpal:
  push cs
  pop es
  mov dx,offset _palbuf
  mov ax,1009h
  int 10h  ; Video;  get palette regs to es:dx
_palbuf db 17 dup(0)

setpal:
  mov dx,offset _colo
push es
  xor ax,ax  
  mov es,ax
  test byte ptr es:410h,2
  jz __
  mov dx,offset _mono
__:
pop es
  mov ax,1002h
  int 10h  ; Video;  set palette regs from es:dx
_colo db 0,1,2,3,4,5,6,7, 0,1,2,3,4,5,6,7 ,0
_mono db 0,7,7,7,7,7,7,7, 0,7,7,7,7,7,7,7 ,0

resetpal:
  push cs
  pop es
  mov dx,offset _palbuf
  mov ax,1002h
  int 10h  ; Video;  set palette regs from es:dx
(当然最简单的恢复方法是mov ax,3和int 10h重置视频模式3)

你可以考虑加到CONFECT.SYS下一个版本中。
另外,CONFECT.SYS与什么相联系?我的理解是MenuEnv.CTL(意思是Menu菜单Env环境CTL控制驱动)。

我再附一个激活双字符集并重置调色板的实例,下载附件后改扩展名RAR为COM。运行后先显示同一亮度的6个汉字,按一键后显示西文和不同亮度。

[ Last edited by 本是 on 2008-12-19 at 16:07 ]
附件 1: 2sets.RAR (2008-12-19 16:07, 398 bytes, 下载附件所需积分 1点 ,下载次数: 51)

作者: wuchan     时间: 2008-12-19 16:46
有个问题.用个这个文件替换原来4.0的,原来设置好的菜单表头无法显示,还有默认选项变成全黑了.要移动后才变成高亮的.
作者: sanchuan     时间: 2008-12-19 17:07


  Quote:
Originally posted by 本是 at 2008-12-19 16:00:
RE: Sanchuan:
首先,你的软件很不错,菜单使用方式特别、方便,希望有更多的人使用。

你在说明文件中说
”特别说明:
1、为了在文本方式能 ...


谢谢 本是 赐教!愿多多交流。

关于CONFECT.SYS与什么相联系的问题,其实confect就是一个简单的DOS驱动程序,只不过不驻留内存罢了。

另外,如果设计巧妙,在文本方式是可以显示150个不重复汉字,现在最棘手的是9点制表符从0c0h扩展到0ffh的问题。

[ Last edited by sanchuan on 2008-12-19 at 17:30 ]
作者: sanchuan     时间: 2008-12-19 17:11


  Quote:
Originally posted by wuchan at 2008-12-19 16:46:
有个问题.用个这个文件替换原来4.0的,原来设置好的菜单表头无法显示,还有默认选项变成全黑了.要移动后才变成高亮的.


4.0的版本在自定义时用的是rem default:,现在用的是set default=
注意将冒号改为等号
作者: 本是     时间: 2008-12-19 20:25


  Quote:
Originally posted by sanchuan at 2008-12-19 17:07:
现在最棘手的是9点制表符从0c0h扩展到0ffh的问题。 ...

其实,这就是我在开发VtMagik.com的过程曾经伤透脑筋的我称之为单字节新汉字内码问题,这在9点显示方式下尤其突出。在9点显示方式下,有一种办法可以让汉字看上去不断开——0c0h,80h;0c1h,81h;...——这样可以有32个汉字无缝显示。顺序方式n,n+1;n+2,n+3;...容易编程,但无法利用这种制表符自动复制第8列到第9列的自动特性。

而且,不管设置8点还是9点,都对VGA卡的寄存器进行了设置,所以可能带来兼容性问题——显示器频率超界,引起黑屏;不作设置,即跳了这段程序,差别是很大的,尽管视觉上看不出。程序设计中有很多东东对用户都是“不可见的”,可程序员不能不清楚。这就是我通常不想解释的原因。对于用户是要简单,难题就专为程序员独享!真是有苦说不出。所以,我的VtMagik有-M0与-M8、-M9之分。一般用户可能会嫌软件命令和参数复杂,可这是不得已的。
作者: sanchuan     时间: 2008-12-19 22:44


  Quote:
Originally posted by 本是 at 2008-12-19 20:25:


其实,这就是我在开发VtMagik.com的过程曾经伤透脑筋的我称之为单字节新汉字内码问题,这在9点显示方式下尤其突出。在9点显示方式下,有一种办 ...


文本方式9点字符汉字编码也简单:n+40h, n, n1+40h, n1,.....
这种方式编码,可以去掉M0的设置,默认值为M9。一般在屏幕上有缝的汉字都排在后面,如果汉字不多,几乎就看不出来有缝的了。

另:3c0h寄存器——索引号为10h的属性方式控制寄存器有一功能是控制线图字符码的。我试过,没有成功,可能是在10h中断底层又修复了我的设置。
作者: wuchan     时间: 2008-12-20 11:51
可以了
衷心的谢谢,
提醒下压缩包里的TXT文档实例用的是":"号,但文档前部的格式说明没有错.我粗心只看了实例...^_^
作者: sanchuan     时间: 2008-12-20 17:50


  Quote:
Originally posted by wuchan at 2008-12-20 11:51:
可以了
衷心的谢谢,
提醒下压缩包里的TXT文档实例用的是":"号,但文档前部的格式说明没有错.我粗心只看了实例...^_^

谢谢你指正,是我疏忽。现在实例中都是等号了。
作者: supertom     时间: 2008-12-23 11:44
期待三川更完美的新版本
作者: joinnow2008     时间: 2008-12-27 19:29
执行,没反应.
作者: joinnow2008     时间: 2008-12-27 22:55
奇怪,

执行之后,有头,有尾,就是没有中间????

按英文字母,或时间自动结束后,自动返回

A:>
作者: supertom     时间: 2008-12-28 22:44
注意一下楼主的说明,特别是和例程不同的地方,有时候就是一个符号导致的,呵呵
作者: bow     时间: 2008-12-29 11:01
很好啊,一次测试通过。赞!
如果能控制字符大小。和自动居中就好了。最好加一个背景。
作者: xugaohui     时间: 2008-12-31 01:21
config.sys大致是这样的:
DEVICE=CONFECT.SYS
REM [SETTINGS]
set confect=M1,实模式
set confect=M2,实模式并启动网络
set confect=M3,实模式并加载CD-ROM
set confect=M4,最小模式
REM [M1]
DEVICE=\HIMEM.SYS /TESTMEM:OFF
.....

REM [M4]

REM [CONFIG]
DOS=HIGH,UMB
SHELL=COMMAND.COM /P /E:512
选择M4第4项菜单时总是出现这个错误提示,

如果去掉 DOS=HIGH,UMB这一行就不会出现这样的错误,其它菜单项又必须要这一项。用config.sys原英文菜单放到[commom]就不会有这样的错误提示。

[ Last edited by xugaohui on 2008-12-31 at 01:27 ]
作者: 本是     时间: 2008-12-31 10:28
config.sys中:
DEVICE=HIMEM.SYS
DEVICEHIGH=UMBPCI.SYS
一切OK!
DEVICE=UMBPCI.SYS
DEVICEHIGH=HIMEM.SYS
会出象18楼的错误提示。
作者: xugaohui     时间: 2008-12-31 11:24
当REM [CONFIG]下面有DOS=HIGH,UMB时,如果一个配置块下载没有加载himem.sys,就会出现上面的错误。可能是菜单驱动与原config.sys菜单执行顺序有区别。这个错误不影响使用,但觉得不够完美。
另外如果每项菜单前面的ABC.能空两格就好了。
我在vmware上试了,不能显示出尾注,在物理电脑上可以显示出来。
现在在vmware和真实电脑上都没有发现汉字有中空现像,最初的版本有中空。


[ Last edited by xugaohui on 2008-12-31 at 11:30 ]
作者: sanchuan     时间: 2008-12-31 12:12


  Quote:
Originally posted by xugaohui at 2008-12-31 11:24:
当REM [CONFIG]下面有DOS=HIGH,UMB时,如果一个配置块下载没有加载himem.sys,就会出现上面的错误。可能是菜单驱动与原config.sys菜单执行顺序有区别。这个错 ...

你的判断,与我分析的结果是一样的。
DOS在执行原config菜单时,首先执行菜单部分,而后执行菜单前后的配置。
confect则是按顺序执行。

[ Last edited by sanchuan on 2008-12-31 at 12:15 ]
作者: 本是     时间: 2008-12-31 12:40


  Quote:
Originally posted by xugaohui at 2008-12-31 11:24:
REM [CONFIG]下面有DOS=HIGH,UMB时,如果一个配置块下载没有加载himem.sys,就会出现上面的错误。可能是菜单驱动与原config.sys菜单执行顺序有区别。这个错 ...

既然“REM [CONFIG]下面有DOS=HIGH,UMB时,如果一个配置块下载没有加载himem.sys,就会出现上面的错误。”
那就把“DOS=HIGH,UMB”,放到加载himem.sys的配置块中,而不是放到公用[common]块中,
就可以避免上面的错误。
至少理论上如此。谁来试验证明?

[ Last edited by 本是 on 2008-12-31 at 12:41 ]
作者: sanchuan     时间: 2008-12-31 13:57
在confect中,REM [SETTINGS]语句之前的配置,和rem [config]语句之后的配置,DOS都会作为公用处理。也就是说:“DOS=HIGH,UMB”可以放在REM [SETTINGS]语句之前。其它公用配置,也可以如此。

[ Last edited by sanchuan on 2008-12-31 at 13:58 ]
作者: xugaohui     时间: 2008-12-31 17:43
这些方法试过了。放在任何地方都有这样的错误,同时作用也是一样的。
只要有这一行出现而没有加载himem.sys就会有这个错误。
还发现了一个怪现像,set color=7,0,0和set color=7,0,8显示效果一样。
在物理电脑上与vmware上每项菜单项后面的备注显示颜色总是不一样。物理电脑上set color=7,0,8备注内容是高亮度,虚拟机上不是高亮度。

[ Last edited by xugaohui on 2008-12-31 at 20:31 ]
作者: sanchuan     时间: 2008-12-31 23:02


  Quote:
Originally posted by xugaohui at 2008-12-31 11:24:
当REM [CONFIG]下面有DOS=HIGH,UMB时,如果一个配置块下载没有加载himem.sys,就会出现上面的错误。可能是菜单驱动与原config.sys菜单执行顺序有区别。这个错 ...

使用DOS=UMB或DOS=HIGH前必须安装HIMEM.SYS

请参考相关连接:http://www.cai520.com/dos/DOS.htm
作者: sanchuan     时间: 2008-12-31 23:06


  Quote:
Originally posted by 本是 at 2008-12-31 12:40:


把“DOS=HIGH,UMB”,放到加载himem.sys的配置块中,而不是放到公用[common]块中,
就可以避免上面的错误。

对!  到底是本是   

[ Last edited by sanchuan on 2008-12-31 at 23:08 ]
作者: xugaohui     时间: 2009-1-1 01:20
用原config菜单总是不会有这个错误。上面的方法都试过了。
也就是需要一项菜单不加载xms umb内存驱动。要求效果完全等同在原英文config菜单按F5键的作用一样,不加载任何驱动。同时这个菜单又可以用于其它需要加载了himem.sys的项目。总之这个中文菜单配置中有DOS=HIGH,UMB却没有加载himem.sys就会有错误提示。

set color=定义菜单项字符的颜色,背景色和提示信息的背景色,颜色值为0~7;
使用set color=7,0,0。为什么提示信息的背景色在真实电脑是高亮度白色,能不能和未选中菜单项的颜色一样?
下图是在vpc中的截图,config.sys内容与20楼的完全一样。


[ Last edited by xugaohui on 2009-1-1 at 01:47 ]
作者: sanchuan     时间: 2009-1-1 16:42


  Quote:
Originally posted by xugaohui at 2009-1-1 01:20:
set color=定义菜单项字符的颜色,背景色和提示信息的背景色,颜色值为0~7;
使用set color=7,0,0。为什么提示信息的背景色在真实电脑是高亮度白色,能不能和未选中菜单项的颜色一样? ...

关于颜色的设置,根据本是提供的资料,在4.2版中作了改进。

其中:颜色0与8同为黑色,颜色7和15同为白色。

4.2版增加了一些设置,见压缩包内说明。

[ Last edited by sanchuan on 2009-1-3 at 21:36 ]
附件 1: confect42.rar (2009-1-3 21:36, 6.12 K,下载次数: 101)

作者: xugaohui     时间: 2009-1-1 19:57
4.2版本终于支持菜单缩进了,这下菜单又更美观了。虽不常用单选或复选,但
还是要学习使用方法。
为个兼容原始config.sys,我的autoexec.bat前两行是:
SET CONFIG=%CONFECT%
SET CONFECT=
confect是目前为止最方便的菜单驱动,新年第一天作者还在更新软件,感谢作者。

马上在vmware上试用,现在“==”这样的标题看不到等号中间有间隙,以前在vpc上才是没有间隙的,说明文件中没有说明0-15分别表示什么颜色,需要上网搜一下。可设置是否显示快捷键。在vmware上endnote尾注终于可以显示出来了,而且不像真实电脑那样很淡。

希望子菜单离主菜单能近一点就好了.
子菜单前面显示的&和@不够形象。像nu8.0那个的界面里复选和单选十分形象逼真。菜单项前面显示ACSII字符251比"&"要形象。

子菜单单选功能很怪,用上下键移动光带,光带在那一行按的回车,就执行这一行,不管前面有没有"@"。可是光带在上下移动的时侯,前面@的字符却不会跟着上下移动。如下图,光带在那行就会执行那行,不管前面有没有@字符。
set confect=M4,最小模式;更新BIOS时选用,用子菜单可选择不同模式的UMB驱动。
用于复选的&菜单项,居然也可以单选。
set option=M41,不加载UMB驱动;@
set option=M42,加载UMBPCI.SYS
set option=M43,加载EMM386.EXE


[ Last edited by xugaohui on 2009-1-2 at 10:51 ]
作者: sanchuan     时间: 2009-1-2 09:11


  Quote:
Originally posted by xugaohui at 2009-1-1 19:57:
子菜单单选功能很怪,用上下键移动光带,光带在那一行按的回车,就执行这一行,不管前面有没有"@"。可是光带在上下移动的时侯,前面@的字符却不会跟着上下移动。如下图,光带在那行就会执行那行,不管前面有没有@字符。
set confect=M4,最小模式;更新BIOS时选用,用子菜单可选择不同模式的UMB驱动。
用于复选的&菜单项,居然也可以单选。

单选的子项可用数字快捷键(空格键)设置或清除,移动亮条并不等同于选择——楼上第二图的下方已有提示。
子项中若同时标记了&和@,则判断为单选。
在子项,Enter键就是确认亮条处的单选项或 标记有&的所有复选项;若在主项Enter,则执行主项的同时,也会执行有标记的子项。
作者: xugaohui     时间: 2009-1-2 11:45
子菜单中所有项目没有单选或复选时,就算光带在子菜单上按回车也会忽略子菜单。跟据这一点,单选的意思就是指子菜单中必须有一项是被选中,即使光带不在子菜单上面,右边子菜单前面有单选字符的总是被执行。这样子菜单的单选功能就与子菜单没有任何单选或复选功能区别开了。觉得在子菜单中仅有单选时,按上下按键的同时菜单前面显示出字符@更形象些,也可以少按一次空格键.
建议在子菜单再加一个标记符。表示这项子菜单仅用于返回主菜单的。这样在前面加一个指向左的手形汉字就更形象了。

[ Last edited by xugaohui on 2009-1-2 at 11:51 ]
作者: sanchuan     时间: 2009-1-2 14:00


  Quote:
Originally posted by xugaohui at 2009-1-2 11:45:
子菜单中所有项目没有单选或复选时,就算光带在子菜单上按回车也会忽略子菜单。跟据这一点,单选的意思就是指子菜单中必须有一项是被选中,即 ...

谢谢你提出的意见。应该考虑到子项没有作复选或单选标记的处理。现将修改过的Confect42放在28楼(1.子项若未作任何标记,则作复选处理;2.单选标记随亮条移动)。
关于子项与主项距离的问题涉及到参数的设置——这在程序中是很容易做到,但在使用中,参数过多会有诸多不便。怎么解决,需要慎重考虑后确定。
再次对你表示感谢!

[ Last edited by sanchuan on 2009-1-2 at 22:46 ]
作者: xugaohui     时间: 2009-1-2 14:35
4.2版更新后发现少了一个功能:
子菜单全都后面没有"@",这时子菜单总是被当成单选使用。即使光带在主菜单上,没有移到子菜单上,不操作子菜单时默认第一项菜单总是被执行了。
以前是这样的:
子菜单全都后面没有"@",不会操作子菜单,光带停在子菜单第一项上。在主菜单按回车,子菜单的都被忽略了。这样很合理。
而现在的子菜单总是有一项要被执行,想忽略掉也不行了。
不过这个问题是可以通过将第一项子菜单的命令设为空来解决。也就是默设子菜单都被忽略了。
但相比4.1版明显要矛盾了。以前有空选,复选,单选三样。
现在变成有复选时才可以空选,没标记或有加;@单选时,都不能空选了

单选,复选在上下菜单中太复杂了。而且全部是通过按空格键切换。如果太麻烦就干脆简化这个功能了。

重新在28楼下载就没有上述问题了

建议加一个选项可设置返回的变量名,默是%CONFECT%,可选是%CONFIG%
这样更灵活了。还有一个用于子项菜单返回主菜单的标记就好了,这样也可以不按左键返回了。其实还是左键是比较快捷方便的。
感觉我的要求太多了,给作者编程带来了一定工作量。

每次停在这个菜单处时,觉得这个菜单环境好像是在dos下的菜单软件了。
每选择一次下面都有不同的提示信息,更像诺顿8.0中文版的菜单。



就目前来说这个菜单驱动已经是最简单、最方便、功能最强的菜单了。
这么好的东西,你们需要中文菜单的,它就是唯一最好的选择。以前有看过yaya的菜单,需要配合其它软件使用,编辑也不方便,一直没有使用它。


另外说明文件应该注明下:
如果子项对应的命令是空的,下面的rem [子项块名]这一行也不能少。否则就执行下一个rem [下一个子项块名]。

[ Last edited by xugaohui on 2009-1-3 at 01:13 ]
作者: wuchan     时间: 2009-1-2 18:39
呀又更新了,神速啊。。
作者: xugaohui     时间: 2009-1-3 19:37
[重新在28楼下载后继续更复杂的子菜单功能。
单独使用单选、空选、默认空选都正常了。显示状态与执行结果完全正确。
发现在一个怪问题,在主菜单或子菜单处按end键出现下图的错误,
再按下又正常了。
点击图片查看全图


config.sys内容:
DEVICE=CONFECT.SYS
DEVICE=HIMEM.SYS /TESTMEM:OFF /NUMHANDLES=128
DOS=HIGH,UMB
REM [SETTINGS]
set alHead=3
set align=6,1
set alNote=3
set shortcut=a,1
set color=7,0,0,0
set default=1,6,9
set heading=
set heading=Microsoft MS-DOS 7.1 Startup Menu
set heading==================================
set heading=
set endnote=
set endnote=用↑→↓或←键移动亮条,或用 A、B、C ... 键选择主项
set endnote=
set endnote=选项用数字键或空格键设置(或清除),用 Enter 键确定。
set confect=M1,实模式(加载UMBPCI.SYS);在DOS下执行runnet可启动网络功能。
set confect=M2,实模式并启动网络;直接使用IBM TCP/IP协议启动网络功能。
set confect=M3,实模式并加载CD-ROM;支持SATA光驱,在DOS下执行runnet可启动网络功能。
set confect=M4,最小模式;更新BIOS时选用,用子菜单可选择不同模式的UMB驱动。
set option=M41,不加载UMB驱动;@
set option=M42,加载UMBPCI.SYS
set option=M43,加载EMM386.EXE

REM [M1]

DEVICE=UMBPCI.SYS

REM [M2]
DEVICE=UMBPCI.SYS
SET IBMLAN=1

REM [M3]
DEVICE=UMBPCI.SYS
DEVICEHIGH=UIDE.SYS /D:CDROM

REM [M4]
REM [M41]
REM [M42]
DEVICE=UMBPCI.SYS

REM [M43]
DEVICE=EMM386.EXE NOEMS I=B000-B7FF

REM [CONFIG]

SHELL=COMMAND.COM /P /E:512
单选、多选、空选、混合使用中发现了矛盾的问题。正在反复在m41、m42、m43这里测试。
子菜单内容:
set option=M41,11111;&
set option=M42,22222
set option=M43,33333
set option=M44,44444;@
REM [M41]
device=11111
REM [M42]
device=22222
REM [M43]
device=33333
REM [M44]
device=44444

测试1:从主菜单移到子菜单时显示如上图。
错误1:但是按回车后没有执行前面有&的这一行,与显示状态不相对应。

测试2:如上图:将第4项移动第1项,变成@项,再按空格切换变为&项,反复按空格切换。
错误2:第一项菜单只能是在@与&之间转换,按以前的理解正确状态是:在有&或@的菜单上切换时应该是@->空选->&->空选->再循环.....
从这种情况下得出的理解:如果子项全部没有复选,但有一项是单选,在这个单选上按一次空格,它就变成空选了,按回车,所有子项都会忽略了(因为子项前前面都是空的)。
或者这样理解第2个错误:不允许把复选菜单按空格键变成单选,@单选菜单移到前面有&复选项时,不要把这项菜单变成@,@单选项目应该停在上一次的菜单位置上面.这样限制就比较合理。也不会把两者搞的很复杂。

[ Last edited by xugaohui on 2009-1-3 at 21:35 ]
作者: sanchuan     时间: 2009-1-3 20:50
恢复35楼:
confect4.2附带了一个辅助功能,按三次End键,可以查看当前页面字符集中所使用的不重复汉字(最多为112个),在End键则关闭。

检测子项执行块,在config.sys作如下定义:
rem [M4]
set m=abc
rem [M41]
set m=41
rem [M42]
set m=42
rem [M43]
set m=43
rem [M44]
set m=44

然后在DOS命令行用set命令检查结果。



set option=M41,不加载UMB驱动;&
set option=M42,加载UMBPCI.SYS
set option=M43,加载EMM386.EXE;@

confect没有作严格的语法检测。上面的设置,confect会按单选处理。
使用confect必须按其说明去定义。

一组选项不可能又是单选又是复选,二者必居其一。出现上面的结果,会再完善的。谢谢你。

[ Last edited by sanchuan on 2009-1-3 at 20:59 ]
作者: xugaohui     时间: 2009-1-3 21:05
作者太客气了 ,我们作为用户又寄予太多的希望。在上下选择菜单实际单选、复选、空选实在太复杂了。你能做到现在这样就已经很不错了。在进一步测试中发现有多处矛盾,这主要是上下菜单本来就带有单选的味道。
执行完菜单后DOS界面好像被清屏了,可以不清屏吗?
在这里http://cn-dos.net/forum/viewthre ... ;page=2&fpage=1本是的方法是否可以用到你的程序中。
不过你的菜单驱动程序退出后对后继的程序没有影响。

[ Last edited by xugaohui on 2009-1-4 at 01:29 ]
作者: sanchuan     时间: 2009-1-3 21:52


  Quote:
Originally posted by xugaohui at 2009-1-3 21:05:
执行完菜单后DOS界面好像被清屏了,可以不清屏吗? ...

因为confect可能要占据VGA 8个区号的字符集,为了不影响DOS系统,confect在退出时,直接恢复原显示方式的所有设置。

对于35楼中子项的设置,可按如下标记:

set option=M41,不加载UMB驱动;a
set option=M42,加载UMBPCI.SYS
set option=M43,加载EMM386.EXE

即用小写的 a 标记,表示该组子项是单选——并没有指定选择哪一个子项。
而用 @ 标记,表示指定了某个子项。


关于子项同时标记@和&,confect作了除错处理:默认为单选。更新后的Confect42,仍然放在28楼。

[ Last edited by sanchuan on 2009-1-3 at 22:10 ]
作者: supertom     时间: 2009-1-4 10:40
刚刚上班就看到了新版本的发布,大概看了一下,改进不少。稍后仔细研究一下,楼主辛苦,支持一下
作者: joinnow2008     时间: 2009-1-4 14:52
只想问一下实用性的问题:

  如何避免在真实环境中,液晶显示器无法显示的超频现象发生?

  笔记本的液晶是没问题的,台式机的就会无显示

[ Last edited by joinnow2008 on 2009-1-4 at 15:15 ]
作者: xugaohui     时间: 2009-1-4 15:24
真奇怪,你没有用过怎么知道有这个问题?
作者: sanchuan     时间: 2009-1-4 15:45


  Quote:
Originally posted by joinnow2008 at 2009-1-4 14:52:
只想问一下实用性的问题:

  如何避免在真实环境中,液晶显示器无法显示的超频现象发生?

  笔记本的液晶是没问题的,台式机的就会无显示

[ Last edited by joinnow2008 on 2009-1-4 at 15:15 ]

confect42有一个默认参数的设置:
set default=1,6,9
其中,最后一个 9 ,表示原来系统默认的9点字符时钟,一般不会出现超频。
对于性能比较好的液晶显示器,可以将 9 改成 8 ,以改善汉字显示的效果。

上面默认参数若不是 8,可以写成:
set default=1,6
作者: joinnow2008     时间: 2009-1-4 22:36


  Quote:
Originally posted by xugaohui at 2009-1-4 15:24:
真奇怪,你没有用过怎么知道有这个问题?

真奇怪,你没有看我做,怎么知道我没用过?
作者: joinnow2008     时间: 2009-1-4 22:38


  Quote:
Originally posted by sanchuan at 2009-1-4 15:45:



confect42有一个默认参数的设置:
set default=1,6,9
其中,最后一个 9 ,表示原来系统默认的9点字符时钟,一般不会出现超频。
对于性能比较好的液 ...

没看到你的贴子之前,已经去试了,用的就是9。OK

只是很奇怪的是,没有出现其他网友说的汉字中间有缝的现象
作者: 本是     时间: 2009-1-4 22:47


  Quote:
Originally posted by joinnow2008 at 2009-1-4 22:38:
只是很奇怪的是,没有出现其他网友说的汉字中间有缝的现象

大概因为你使用的不重复汉字总数不超过32个。否则9点字符必然出现裂缝!这是字符式显示汉字的“胎里病”——显示卡硬件带来的问题。这一点我在VTmagik贴子中讲了很多遍了。
作者: sanchuan     时间: 2009-1-4 22:55


  Quote:
Originally posted by joinnow2008 at 2009-1-4 22:38:



没看到你的贴子之前,已经去试了,用的就是9。OK

只是很奇怪的是,没有出现其他网友说的汉字中间有缝的现象

Confect42将菜单选项的前32个汉字排在原制表符的位置上,这个位置的字符,系统会将第八位象素复制到第九位,所以没有中缝。Confect42又将标题、尾注的汉字放在另一个字符集,这样就有64个汉字没有中缝。对于使用汉字不多的菜单,是看不出中缝的,也就是说:汉字多了,肯定是有的汉字有中缝的——也许看得不那么明显。
作者: joinnow2008     时间: 2009-1-4 22:56
请等等,我算一下汉字先。。。。。。。
作者: joinnow2008     时间: 2009-1-4 22:58
本是老哥,很不好意思,

刚才我算了,至少不下70个不同的汉字,包括中文的书铭号《 》
作者: joinnow2008     时间: 2009-1-4 23:01
回两位,仔细看过,没有中缝。

但菜单的字没有过32个,指的是,A,B,C,D,E选项后面的字

但如果加上标题跟尾注,过70个。
作者: joinnow2008     时间: 2009-1-4 23:14
再次测试,发现不同之处,

用最早的版本,加9指定,液晶无事,且汉字无中缝,

刚才换了4。2版本,指定9,液晶无事,但汉字部分有缝,现场如下

标题,10几个字,无
菜单选项A,B,C,D ,E五项,25个字左右,无缝

尾注有两行,有缝。
作者: chishingchan     时间: 2009-1-5 14:40
强烈要求楼主的下一版支持XP下的字体文件:bootfont.bin
作者: wuchan     时间: 2009-1-6 11:49
今天使用了4.2版本替换了我原来的。用的是更新过的有个问题,像请教下
就是我在config中一般都是用空执行的,所有的处理放在auto中,这样便于我们具体的修改。我用的子菜单,执行都只能执行第一项,不知为何。
具体如下
***config.sys
......
......
confect=sub_2,加载8139驱动启动ghost
set option=DHCP,DHCP模式
set option=IP,IP模式(38.1)

set confect=sub_3,加载6103驱动启动ghost
set option=DHCP,DHCP模式
set option=IP,IP模式(38.1)

set confect=sub_4,BIOS升级


REM [sub_1]
set exec=

REM [sub_2]
REM [DHCP]
set exec1=
REM [IP]
set exec2=

REM [sub_3]
REM [DHCP]
set exec1=
REM [IP]
set exec2=
.......


*******autoexec.bat
......
.......
:SUB_2
%exec1%
echo copy c:\watdh.cfg c:\wattcp.cfg
CD \DOSNET\8139
call 8139.BAT
c:\ghost.exe
GOTO END

%exec2%
echo copy c:\wat38.cfg c:\wattcp.cfg
CD \DOSNET\8139
call 8139.BAT
c:\ghost.exe
GOTO END

:SUB_3
%exec1%
echo copy c:\watdh.cfg c:\wattcp.cfg
CD \DOSNET\VIA6103
call VIA.BAT
c:\ghost.exe
GOTO END
%exec2%
echo copy c:\wat38.cfg c:\wattcp.cfg
CD \DOSNET\VIA6103
call VIA.BAT
c:\ghost.exe
GOTO END


:SUB_4
%exec%
cd \bios
..........

在执行时都是只执行子项的第一个。难道在auto中不能自动跳转寻找对应的%exec*%
希望能帮忙指正下谢谢!!
作者: wuchan     时间: 2009-1-6 12:26
难道都要把auto下的执行语句都要放到config下相应的%exec*%,按我理解,应该是auto和config通过主项的块名和相应的子项变量进行对应 对应的,不知这样怎么就不行。
我也试着把其中auto的部分语句放在conf里,但效果还是一样。
作者: sanchuan     时间: 2009-1-6 12:50


  Quote:
Originally posted by wuchan at 2009-1-6 11:49:
今天使用了4.2版本替换了我原来的。用的是更新过的有个问题,像请教下
就是我在config中一般都是用空执行的,所有的处理放在auto中,这样便于我们 ...

你所遇到的问题,不是confect.sys 造成的。
在config中设置变量,不能为空——等于没有设置,结果就是在auto中遇到goto %confect%时,当然执行第一项。

根据你的情况,在Config.sys中应改成:
......
rem [sub_2]
rem [DHCP]
set sub2=DHCP
rem [IP]
set sub2=IP
......



在autoexc.bat中,则改成:

goto %confect%
......

:sub_2
goto %sub2%

:DHCP
echo copy c:\watdh.cfg c:\wattcp.cfg
CD \DOSNET\8139
call 8139.BAT
c:\ghost.exe
GOTO END

:IP
echo copy c:\wat38.cfg c:\wattcp.cfg
CD \DOSNET\8139
call 8139.BAT
c:\ghost.exe
GOTO END

......



另外,在confect4.0的实例中,autoexec.bat用到 %exec1%。要注意的是这个变量在config.sys中,其实设置的是一个DOS命令,而不是auto中的标号。


在Config中设置的变量,如果是一个DOS命令,例如 set exec=dir ,则在auto中可以以 %exec% 的形式单独出现。

[ Last edited by sanchuan on 2009-1-6 at 13:15 ]
作者: wuchan     时间: 2009-1-6 15:22
o .明白了。
原来以为exec代表的是变量,用来传输的。
还有参考3.0的在config中不是一定要
set %××××%么。

受教了,衷心的谢谢sanchuan老师。。。。
作者: wuchan     时间: 2009-1-6 15:45
还是不行呀。提示:“label not found”
我参考该的如下:
×××config。sys
.......
set confect=sub_2,加载8139驱动启动ghost
set option=DHCP,DHCP模式
set option=IP,IP模式(38.1)

set confect=sub_3,加载6103驱动启动ghost
set option=DHCP,DHCP模式
set option=IP,IP模式(38.1)

set confect=sub_4,BIOS升级

REM [sub_1]
set sub1=

REM [sub_2]
rem [DHCP]
set sub2=DHCP
rem [IP]
set sub2=IP

REM [sub_3]
rem [DHCP]
set sub3=DHCP
REM [IP]
set sub3=IP
.......

****autoexec.bat
.....
GOTO %CONFECT%

:SUB_1
%sub1%
GOTO END

:SUB_2
goto %sub2%

:DHCP
echo copy c:\watdh.cfg c:\wattcp.cfg
CD \DOSNET\8139
call 8139.BAT
c:\ghost.exe
GOTO END
:IP
echo copy c:\wat38.cfg c:\wattcp.cfg
CD \DOSNET\8139
call 8139.BAT
c:\ghost.exe
GOTO END

:SUB_3
goto %sub3%

:DHCP
echo copy c:\watdh.cfg c:\wattcp.cfg
CD \DOSNET\VIA6103
call VIA.BAT
c:\ghost.exe
GOTO END
:IP
echo copy c:\wat38.cfg c:\wattcp.cfg
CD \DOSNET\VIA6103
call VIA.BAT
c:\ghost.exe
GOTO END
.......
这样也还是不行的。就提示了,我想应该是conf和auto文件的连系不上把。
老师。。。。
作者: 本是     时间: 2009-1-6 15:46


  Quote:
Originally posted by chishingchan at 2009-1-5 14:40:
强烈要求楼主的下一版支持XP下的字体文件:bootfont.bin

我已把其中的汉字库取出,没什么特殊的;所谓兼容性好是因为NTLDR显示方式是图形(非CONFECT、VTMAGIK那样的字符方式),而不是bootfont.bin!而且bootfont.bin太大、取字模麻烦!!

bootfont.bin与hzk16相互转换程序见相关贴:
http://www.cn-dos.net/forum/viewthread.php?tid=45546&fpage=1
http://www.cn-dos.net/forum/viewthread.php?tid=45267&fpage=1
作者: wuchan     时间: 2009-1-6 15:58
我试了下。单项菜单块的没有问题。就是有子项菜单的一执行就有提示'"label not found"  应该是子项菜单的变量传递 ,按介绍的在config中到auto无法联系上。
作者: sanchuan     时间: 2009-1-6 16:31


  Quote:
Originally posted by wuchan at 2009-1-6 15:45:
还是不行呀。提示:“label not found”
我参考该的如下:
×××config。sys
.......
set confect=sub_2,加载8139驱动启动ghost
set option=DHCP,DHCP模式
set option=IP,IP模 ...

你在启动DOS后的菜单中没有选择子项,所以有提示:“label not found”

应该按空格键设置要执行的子项,再回车
作者: wuchan     时间: 2009-1-6 16:41
55555.我晕这么简单。。
不是光标直接选择呀。。。。。
作者: sanchuan     时间: 2009-1-6 16:49


  Quote:
Originally posted by wuchan at 2009-1-6 16:41:
55555.我晕这么简单。。
不是光标直接选择呀。。。。。

最早的confect子项只有多选,选哪几个,是不能用回车键的,所以......
作者: yjd     时间: 2009-1-8 02:22
真的太强了。终于看到方便我们使用的超简单的东西。竟然还支持提示信息
真的和我用的syslinux和grub4dos越来越近了。
楼主辛苦了。
作者: hyt3d     时间: 2009-1-8 13:46
看惯了yaya的菜单,不知可否加入隐藏式菜单这个功能
作者: xiaoyunwang     时间: 2009-1-9 14:49
关注中...
作者: yjd     时间: 2009-1-10 02:26
请教下:

; [CONFIG]

device=\dos\himem.sys /testmemff
device=\dos\emm386.sys noems

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

这个公用配置可以放在config.sys的最前面吗?还是必须放在最尾部?

我看以前yaya的那个都是放在最前面执行的?

刚注意看了回帖。原来在第二页就有说明了。

[ Last edited by yjd on 2009-1-10 at 05:50 ]
作者: yjd     时间: 2009-1-10 06:15
请教下一行菜单支持多少汉字。
作者: sanchuan     时间: 2009-1-10 09:27


  Quote:
Originally posted by yjd at 2009-1-10 02:26:
请教下:

; [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 ...

公共配置可以放在前面,也可以放在后面。不过,[CONFIG] 是Confect菜单的结尾标记,不能放在前面了。

Confect4.2 菜单部分容纳96个不重复汉字,标题和尾注容纳48个不重复汉字,共计144个汉字。
作者: yjd     时间: 2009-1-10 14:23
autoexec.bat和config.sys设置上还是没搞懂-_-!!!。。。。。

config.sys:
。。。。略
set confect=auto,全自动网络刻隆;提示: 网络刻隆全自动模式
。。。。略
rem [auto]

autoexec.bat:
。。。。略
goto %confect%
:[auto]
echo Please wait..
md x:\ng
echo Please wait....
call x:\ng\netgh.bat
goto exit
。。。。略

知道问题出在rem [auto]可是不懂怎么设置
看了第四页解释还是没理解-_-!!!
这样执行显示如下图:

[ Last edited by yjd on 2009-1-10 at 14:25 ]
附件 1: snap013.jpg (2009-1-10 14:23, 3.28 K)



作者: sanchuan     时间: 2009-1-10 14:36


  Quote:
Originally posted by yjd at 2009-1-10 14:23:
autoexec.bat和config.sys设置上还是没搞懂-_-!!!。。。。。

autoexec.bat:
。。。。略
goto %confect%
:[auto]
echo Please wait..
md x:\ng
echo Please wait....
call x:\ng\netgh.bat
goto exit
。。。。略
...

问题出在 autoexec.bat 中的标号,正确的标号应是:
:auto

而不是 :[auto]
作者: yjd     时间: 2009-1-10 20:47


  Quote:
Originally posted by sanchuan at 2009-1-10 02:36 PM:


问题出在 autoexec.bat 中的标号,正确的标号应是:
:auto

而不是 :[auto]

不好意思。是我写错了。我其他菜单是按:dos这样格式写的。但是还是不行。

看了前面的讨论说一定要在config.sys里的
如:
rem [dos]
这里一样要加变量?

我的config.sys菜单如下:
-----------------------------------------------------------------------------------------------
DEVICE=confect.sys /m

rem [SETTINGS]
set alHead=6
set align=8,1
set alNote=6
set shortcut=a,1
set color=2,8,8,8
set default=1,30,8
set heading=
set heading= 常用维护工具
set heading====================================
set heading=
set endnote=用↑→↓或←键移动亮条,或用 A、B、C ... 键选择主项
set endnote=选项用数字键或空格键设置(或清除),用 Enter 键确定。

set confect=dos,DOS工具箱;

rem [dos]
device=\soft\UMBPCI.SYS

rem [CONFIG]
SHELL=command.com /P /E:640
DEVICE=a:\soft\HIMEM.SYS /TESTMEM:OFF
dos=NOAUTO,high,umb
files=80
stackshigh=9,256
lastdrive=z
buffers=20,8
numlock=on
-----------------------------------------------------------------------------------------------
autoexec.bat如下:
-----------------------------------------------------------------------------------------------
SET CONFIG=%CONFECT%
SET CONFECT=
set EXPAND=YES
a:\soft\xmsdsk 10240 x: /y >NUL
a:\soft\FINDRAMD.EXE >nul
path=a:\;a:\soft;x:\;x:\lan;x:\tmp >nul
md x:\Tmp >nul
md x:\soft >nul
set temp=x:\Tmp
set tmp=x:\Tmp

goto %confect%

:dos
call m.bat
goto exit

还是提示:
goto
label not found

[ Last edited by yjd on 2009-1-10 at 20:51 ]
作者: sanchuan     时间: 2009-1-10 21:04


  Quote:
Originally posted by yjd at 2009-1-10 20:47:

看了前面的讨论说一定要在config.sys里的
如:
rem [dos]
这里一样要加变量? ...

在 rem [DOS] 配置块内,是根据需要设置变量,而不是非加不可。

confect菜单的主项,其实包含着一个变量,例如:
set confect=auto, .....                  注意:逗号前面就是标准的变量

在 autoexec.bat 中  goto %confect% ,系统就自动置换为 goto  auto 了。
作者: yjd     时间: 2009-1-10 21:10
非常感谢作者能来回答。那也就是说我的config.sys和autoexec.bat写的没有错了。
怎么还是提示label not found。您在前面回答他们的时候是说没有选择子项。
我这里只有一个当前主项。不知道为何。。。。

还有前面帖子写的是
rem [dos]
而您在4.2文档中写的是
;[dos]
这2个哪个是对的?还是都是起注释?
作者: sanchuan     时间: 2009-1-10 21:14


  Quote:
Originally posted by yjd at 2009-1-10 20:47:

autoexec.bat如下:
-----------------------------------------------------------------------------------------------
SET CONFIG=%CONFECT%
SET CONFECT=
set EXPAND=YES
a:\soft\xmsdsk 10240 x: /y >NUL
a:\soft\FINDRAMD.EXE >nul
path=a:\;a:\soft;x:\;x:\lan;x:\tmp >nul
md x:\Tmp >nul
md x:\soft >nul
set temp=x:\Tmp
set tmp=x:\Tmp

goto %confect%

:dos
call m.bat
goto exit

还是提示:
goto
label not found
...

问题出在 最后的 goto exit   ———— 没有发现标号 :exit

goto 后面是一个出口的标号,在Autoexec.bat 中应该有与之对应的标号

根据你的情况,应该在最后加一行:
:exit

这一行标号的下面,可根据情况添加命令,也可什么都不写


关于 rem 和分号, 在confing正文中是一个意思,起到注释的作用;而confect正是利用这一点来驱动自定义的菜单。

[ Last edited by sanchuan on 2009-1-10 at 21:20 ]
作者: yjd     时间: 2009-1-10 21:26
不知为何变成这样了。。。-_-!!!
解决了。用记事本重新保存下文件又好了-_-!!!



[ Last edited by yjd on 2009-1-11 at 04:42 ]
作者: softmouse     时间: 2009-1-12 03:19
奇怪现象,一直搞不定,请指教。

根据说明,我使用了 /m 参数准备生成小字体(我理解为就是只包含菜单中有的字,这样可大大节约启动软件的空间)
DEVICE=DRV\CONFECT.SYS /m A:\HZK16
结果显示为混乱图形,见图。查看根目录,也没有生成confect.dot文件。

取消这个参数,一切正常。

是不是我理解有误?


作者: sanchuan     时间: 2009-1-12 11:37    标题: Confect V4.3


Confect V4.3 新增了:
1. 包含块命令 rem include=blockname
2. 单选菜单子项若选中,自动返回 set option=blockname
3. 颜色取值范围扩大到 0 ~ 31

[ Last edited by sanchuan on 2009-1-12 at 12:02 ]
附件 1: Confect43.rar (2009-1-12 11:51, 6.11 K,下载次数: 769)

作者: sanchuan     时间: 2009-1-12 11:46    标题: Confect V4.3颜色表



[ Last edited by sanchuan on 2009-1-12 at 12:03 ]
作者: sanchuan     时间: 2009-1-12 11:50    标题: Confect V4.3 说明

功能:
a. 4行标题
b. 16项主菜单(可设提示信息)
c. 每项主菜单可设12条单选或复选子项(即:子菜单)
d. 4行尾注
e. 菜单项目过多时,自动分页,每页可显示96个不重复汉字的菜单
   (包含标题和尾注等,同屏最多显示150个不重复汉字)
f. 新增了包含配置块的功能: rem include=blockname
g. 新增了自动生成单选项变量:set option=neme
h. 颜色取值范围扩大到 0 ~ 31 (最大值为63)
i. 可根据需要自动生成汉字小字库

定义:
device=Confect.sys /m a:\dos\hzk16        加载Confect驱动 创建小字库 加载指定的汉字库
SET PATH=a:\;a:\dos;C:\;..;

rem [SETTINGS]                (Confect的起始标记)
set alHead=6                标题缩进(字符为单位)
set align=10,1                菜单缩进,行间距0或1
set alNote=6                提示或尾注缩进
set shortcut=a,1        菜单主项和子项的快捷键(此项为空,则不显示快捷键)
set color=7,1,9,9        字符色,菜单背景色,子项背景色,提示信息背景色  (颜色号0~31)
set default=1,30,8        默认菜单项,默认等待的时间(秒),9点或8点字符(默认为9)
set heading=text        菜单头标题
set endnote=text        尾注说明
set confect=name_a,text;note        主项对应的块名,菜单标题,菜单说明
set option=neme_a1,text;@        子项对应的块名,子项标题;单选标记@或复选标记&

rem [name_a]                块
......                        配置

rem [name_a1]                块
rem include=name_xxx        包含块 name_xxx 的配置!!! 新增的功能 !!!
......                        配置

rem [name_xxx]                块
......                        配置

rem [CONFIG]                (Confect的结束标记)
......                        公共配置


附注:
a. 主项对应的子项若全部没有设置默认标记,则默认该主项下的子项为复选。若需要该主项下的子项为没有默认项的单选,则在该主项下的任一子项后用a替代@作标记。
b. 创建的小字库为confect.dot,保存在根目录。
c. Confect默认显示字符为9点,可设为8点字符时钟。

[ Last edited by sanchuan on 2009-1-12 at 15:25 ]
作者: sanchuan     时间: 2009-1-12 14:51


  Quote:
Originally posted by softmouse at 2009-1-12 03:19:
奇怪现象,一直搞不定,请指教。
根据说明,我使用了 /m 参数准备生成小字体(我理解为就是只包含菜单中有的字,这样可大大节约启动软件的空 ...

你的理解没有错,定义的语句也是对的。

confect驱动菜单中若出现空方框,表示没有查到汉字字模。全部是空方框,表示没有查到汉字库。
你的情况应该是在 A:\hzk16 上,也就是说A盘根目录没有hzk16。

另外说明:confect 默认当前盘根目录的 hzk16 和小字库 confect.dot 。若config.sys 没有指定字库,则会自动加载当前盘根目录下的 hzk16 或 小字库 confect.dot 。
作者: xugaohui     时间: 2009-1-12 21:45
set option=blockname这个功能好像没什么用处,只会减少环境变量空间。默认command.com的环境变量空间很小了。

[ Last edited by xugaohui on 2009-1-13 at 01:18 ]
作者: sanchuan     时间: 2009-1-13 00:10


  Quote:
Originally posted by xugaohui at 2009-1-12 21:45:
set option=blockname这个功能好像没什么用处,只会减少环境变量空间。默设command.com的环境变量空间很小了。

设立单选子项环境变量 set option=blockname ,目的是在 Autoexec.bat 中,除了用 goto %confect% 外,也可以用 goto %option%  ————省去了在子项块中的设置,也使得 Autoexec.bat 简捷。

如果环境变量过多,可以使用SHELL命令加大COMMAND.COM的环境空间。在CONFIG.SYS文件中加入以下命令就可将环境大小从160字节,增加到512字节:
shell=command.com /e:512 /p
或者将 512 改成 10242048
作者: xugaohui     时间: 2009-1-13 01:34
功能又强大一点了,文件更小了。4.3版的子项默认菜单项边框前面是一个小竖线了,以前是弧形。如果能改成>就更形象了。
作者: yjd     时间: 2009-1-13 03:31
又更新了支持。^_^

[ Last edited by yjd on 2009-2-20 at 17:27 ]
作者: softmouse     时间: 2009-1-13 16:29
经过我的测试,HZK16必须放在A盘根目录下/M 制作小字库才能成功。我试过,放到其他位置(子目录,或C盘等),即便指定好 HZK16的位置也不能成功。
作者: softmouse     时间: 2009-1-13 16:33
我个人感受,Confect 是目前最简便、最朴素、最小巧、兼容性最好的中文引导菜单程序,威力巨大,前途无限啊!感谢作者给我们提供这么好的软件。我特别喜欢朴实简洁的DOS工具。

提个建议,看在没有参考价值:

1、那个单选复选 的标记在菜单中看起来与文字靠得太近,要是能有一个空格的间隔就好看多了;
2、选择标记&@显示出来比较丑,能否改为更美观的符号,或者支持自定义?
3、在同一个小节中,既有单选项目,又有复选项目,能否做到混合使用?

[ Last edited by softmouse on 2009-1-13 at 16:38 ]
作者: llrrqq     时间: 2009-1-18 22:12
看来很有用!收藏了,谢谢!
作者: yjd     时间: 2009-1-23 00:08
发现4.3的颜色设置和4.2出来的不同了。
-----------------------------------------
4.2颜色设置:
set color=2,0,0,0
4.3颜色设置:
set color=2,0,0,0
-----------------------------------------
4.2版所选菜单和提示信息是白色的,共3个颜色,白,黑,绿

4.3版所选菜单和提示信息还是绿色,共2个颜色,绿,黑

如图4.2效果


如图4.3效果


还是4.2比较好看。提示信息有区分开

[ Last edited by yjd on 2009-2-14 at 12:20 ]
作者: qingyangecho     时间: 2009-1-29 00:34
看着是感觉有色差更简单明了好看
作者: motop     时间: 2009-1-29 13:20
原理很高深,但工具很方便。
作者: qwwewe     时间: 2009-2-4 11:35
衷心的谢谢
作者: VeDe     时间: 2009-2-12 12:30    标题: 请教Confect问题:

config.sys内容概要:
DEVICE=confect.sys
SHELL=command.com /P /E:640
DEVICE=\soft\himem.sys /testmem:off
dos=NOAUTO,high,umb
files=80
stackshigh=9,256
lastdrive=z
buffers=20,8
numlock=off

rem [SETTINGS]
...略...
set confect=dos,DOS工具箱
set confect=shutdown,关闭计算机
rem [dos]
rem [shutdown]
rem [CONFIG]

AutoExec.bat内容概要:
@echo off
set EXPAND=YES
a:\dos\xmsdsk 10240 x: /y >NUL
a:\dos\FINDRAMD.EXE >nul
path=a:\;a:\dos;x:\;x:\dos;x:\Tmp >nul
md x:\Tmp >nul
md x:\dos >nul
set temp=x:\Tmp
set tmp=x:\Tmp
goto %confect%
:dos
call dos.bat
goto exit
:shutdown
s.com
:exit
======================
上述可正常出现菜单界面,但当执行 DOS工具箱 菜单后出现自动重启问题!
望解,谢谢!

[ Last edited by VeDe on 2009-2-12 at 15:25 ]
作者: guo     时间: 2009-2-12 14:50


  Quote:
Originally posted by VeDe at 2009-2-12 12:30:
config.sys内容概要:
DEVICE=confect.sys
SHELL=command.com /P /E:640
DEVICE=\soft\himem.sys /testmem:off
dos=NOAUTO,high,umb
......
上述可正常出现菜单界面,但当执行 DOS工具箱 菜单后出现自动重启问题!
望解,谢谢!

在 AutoExec.bat 中,没有对应 DOS 工具箱的标号 :DOS ,是不会重启的。
作者: VeDe     时间: 2009-2-12 15:27    标题: Re:92# guo

笔误,已修正。。。是相互对应的,这才郁闷啊。。。实机及虚拟机中完全一样的结果。。。
作者: VeDe     时间: 2009-2-12 17:51    标题: 关于重启问题!

知道一些因素了^_^。。。无奈喜欢Confect菜单形式,哈哈,Max莫怪哦!
作者: yjd     时间: 2009-2-12 23:04
今天给我朋友维护电脑刚好用到我的u盘,重启问题也被我碰到了,刚开始测试N次老是重启,其实没重启只是屏幕没信号来以为重启,回车他会加载第一项。-_-!!
在一个信步主板和15液晶显示器上出现了。

原作者前面贴的回话:
------------------------------------------------------------------
confect42有一个默认参数的设置:
set default=1,6,9
其中,最后一个 9 ,表示原来系统默认的9点字符时钟,一般不会出现超频。
对于性能比较好的液晶显示器,可以将 9 改成 8 ,以改善汉字显示的效果。

上面默认参数若不是 8,可以写成:
set default=1,6

大概因为你使用的不重复汉字总数不超过32个。否则9点字符必然出现裂缝!这是字符式显示汉字的“胎里病”——显示卡硬件带来的问题。
这一点我在VTmagik贴子中讲了很多遍了。
------------------------------------------------------------------
解决就是把
set default=1,30,8(8改9就应该没问题了不过汉字会出现裂缝)

[ Last edited by yjd on 2009-2-12 at 23:14 ]
作者: darkkid     时间: 2009-2-21 01:26
其实我之所以用confect.sys,是因为ezboot的启动菜单不支持a盘,zip盘这类,只支持光驱,对于我这等不量产的u盘使用者简直是个打击,而grub的菜单界面不太好看,
如果connfect.sys能好像ezboot那样加入背景图片,应该能做出更好看的菜单

哈哈
作者: yjd     时间: 2009-2-21 10:44


  Quote:
Originally posted by darkkid at 2009-2-21 01:26 AM:
其实我之所以用confect.sys,是因为ezboot的启动菜单不支持a盘,zip盘这类,只支持光驱,对于我这等不量产的u盘使用者简直是个打击,而grub的菜单界面 ...

你的要求是在太高-_-!!。
不量产U盘,可以制作syslinux+grub4dos(gfxmenu想怎么漂亮都行还可以是动态的是不是ez强?)再说要说启动兼容性大家的结论是ez肯定排最后^_^
作者: wuchan     时间: 2009-2-25 15:33
有个奇怪的现象。。。
我在其中设置二级菜单、有的可以,有的不行。但觉得其中的语句没有问题呀。
如下;
*****config.sys*****
....
set confect=sub_2,加载8139驱动_启动ghost
set option=DHCP,DHCP模式;@
set option=IP,IP模式(38.1)

set confect=sub_3,加载6103驱动_启动ghost
set option=DHCP,DHCP模式;@
set option=IP,IP模式(38.1)
.....
; [sub_2]
; [DHCP]
set sub2=21
; [IP]
set sub2=22

; [sub_3]
; [DHCP]
set sub3=31
; [IP]
set sub3=32
.....
...


*****autoexec.bat***
.....
:SUB_2
goto %sub2%
:21
ECHO 8139_DHCP
echo copy c:\watdh.cfg c:\wattcp.cfg
CD \DOSNET\8139
call 8139.BAT
c:\ghost.exe
GOTO END
:22
echo 8139_ip(38.***)
echo copy c:\wat38.cfg c:\wattcp.cfg
CD \DOSNET\8139
call 8139.BAT
c:\ghost.exe
GOTO END

:SUB_3
goto %sub3%
:31
echo 6103_dhcp
echo copy c:\watdh.cfg c:\wattcp.cfg
CD \DOSNET\via6103
call via.BAT
c:\ghost.exe
GOTO END
:32
echo 6103_ip(38.***)
echo copy c:\wat38.cfg c:\wattcp.cfg
CD \DOSNET\via6103
call via.BAT
c:\ghost.exe
GOTO END
.......



语句如上的。。。我的第2个子菜单可以,但3就不行了,老是调用错,提示“leate ..."
但还有第四个菜单,也是个像 上面一样的二级菜单,就好好的。是不是我那里有错。。

帮忙看看
作者: guo     时间: 2009-2-25 17:31


  Quote:
Originally posted by wuchan at 2009-2-25 15:33:
有个奇怪的现象。。。
我在其中设置二级菜单、有的可以,有的不行。但觉得其中的语句没有问题呀。
如下;
*****config.sys*****
....
set confect=sub_3,加载6103驱动_启动ghost
set option=DHCP,DHCP模式;@
set option=IP,IP模式(38.1)
.....
; [sub_2]
; [DHCP]
set sub2=21
; [IP]
set sub2=22

; [sub_3]
; [DHCP]
set sub3=31
; [IP]
set sub3=32
.....
...
...

Config.sys中的块名重复了。你这里有两个[DHCP] 和 [IP]。
作者: liuxy321     时间: 2009-2-25 23:02
瞧介绍,好象很不错,研究学习下。
作者: yjd     时间: 2009-2-26 04:48


  Quote:
Originally posted by darkkid at 2009-2-21 01:26 AM:
其实我之所以用confect.sys,是因为ezboot的启动菜单不支持a盘,zip盘这类,只支持光驱,对于我这等不量产的u盘使用者简直是个打击,而grub的菜单界面 ...

难道你不知道g4d已经加入了gfxmenu了嘛。
作者: wuchan     时间: 2009-2-26 09:46
99楼朋友谢谢了
作者: lantu     时间: 2009-2-26 09:53
就是不知如何编辑config.sys啊
作者: lantu     时间: 2009-2-27 07:34
如何在字库中增加所需要的汉字啊
或者如何生成所需要的字库啊

[ Last edited by lantu on 2009-2-27 at 07:55 ]
作者: chen463     时间: 2009-2-28 13:03
一个新的菜单显示方式,竟然引起那么热烈讨论,比原稿还热,因为这里是亲自行动执行,可见大家还是粉关心。有个问题想请教,字体可否显示繁体或是其他语系,有字库可载入吗?该如何制作繁体显示?
http://bbs.wuyou.com/viewthread. ... &extra=page%3D1
作者: rengh     时间: 2009-2-28 13:29    标题: 作者,提问一个问题

我用confect.sys创建了一个中文菜单,其中主菜单第一项、第二项都有子菜单,但光标由第一项变到第二项后,第一项的菜单并不消失,造成显示混乱,这是什么原因?请用信箱通知我,email:rengh917@163.com

[ Last edited by rengh on 2009-2-28 at 13:33 ]
作者: chengzs     时间: 2009-9-15 02:26
Confect V4.3
作者: crystalsky911     时间: 2009-10-15 17:26
好像不能选择剩余时间的位置啊~也就是说剩余时间没有办法排版
作者: xsaxy     时间: 2009-11-8 15:49
关于块操作、单选、复选的疑问?config.sys 配置文件如下,总是报错,请帮助解答,谢谢!
config.sys 内容:

;=============================
device=Confect.sys /m
SET PATH=a:\;a:\dos;C:\;..;

;=======================================
; 设置部分
;=======================================

; [SETTINGS]
set alHead=0
set align=4,0
set alNote=0
set shortcut=a,1
set color=15,0,9,20
set default=1,60,8

;========================================
; 菜单部分
;========================================

;--------------
; 标题

set heading=
set heading=               DOS工具盘中文菜单            Confect V4.3
set heading=======================================================================
set heading=

; 说明
set endnote=用↑→↓或←键移动亮条,或用 1、2、3 ... 键选择主项
set endnote=选项用数字键或空格键设置(或清除),用 Enter 键确定。

;---------------------------------
;主菜单15
;---------------------------------

......
......

set confect=DOSADV, Dos 配置;

......
......

;------------
;子菜单
......
......

set option=DOS, 通用DOS配置;@
set option=MAXMEM, Dos (with emm386 & more memory);@

......
......

;---------------------------------
; 块配置部分
;---------------------------------

......
......

;[EMM]
device=himem.sys /testmem:off /numhandles=128
devicehigh=emm386.exe NOEMS
dos=high,umb,
fileshigh=40
buffershigh=4
shell=\command.com /e:2048 /f /p
switches=/f

;[MAXMEM1]
devicehigh=himem.sys /testmem:off /numhandles=128
device=emm386.exe AUTO MIN=5120 I=B000-B7FF NOEMS
dos=high,umb,
fileshigh=40
buffershigh=4
fcbshigh=1,0
stackshigh=0,0
shell=\command.com /e:2048 /f /p
switches=/f
set ns=1

......
......

;---------------------------------
; 子菜单配置与执行
;---------------------------------
;----------------------------
; 15
;----------------------------
......
......

;[DOSADV]

;[DOS]
;include=EMM

;[MAXMEM]
;include=MAXMEM1

......
......

;---------------------------------
; [off]
; [CONFIG]
;---------------------------------
作者: terminal     时间: 2009-12-10 15:48
我要我要
作者: kafeis     时间: 2010-3-11 02:28
真的很强大,我下了试了一下,除了一些小问题,现在正在研究
作者: yemao     时间: 2010-3-22 02:24
先占个地方,以后再说
作者: zgzxp     时间: 2010-3-23 10:05
好久没有更新了,有没有新版呢
作者: zhenxin     时间: 2010-5-18 14:51
THANKS FOR YOUR SHARE.
作者: zhenxin     时间: 2010-5-18 15:36
Thanks for your share.
作者: 251190679     时间: 2010-9-16 16:23
学习学习,支持
作者: lydcn     时间: 2024-3-20 09:35
按照说明配置了

        ; [test]
        DEVICE=\DOS\HIMEM.SYS /cpuclockn /v /machine:1 /testmemff
        ; INCLUDE=inc
; [inc]
        DEVICEHIGH=\DOS\IFSHLP.SYS
        DEVICEHIGH=\DOS\RDISK.COM /s128
        SHELL=COMMAND.COM /e:1024 /f /p


插入块用不了,无效果,直接跳过了,不知道怎么回事