中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-07 16:20
48,041 主题排行 / 350,128 发帖 / 今日 3 篇 / 48,252 会员排行
DOS批处理 & 脚本技术(批处理室) » [原创][批处理单行显示多种颜色字符]
可打印版本  9,015 / 41
第1楼 redtek 发表于 2006-12-19 05:35
金牌会员 发帖 1,147 积分 2,902
[原创][批处理单行显示多种颜色字符]
代码功能:   实现纯批处理在单行显示不同颜色的彩色字符功能,并且不影响相临行文字的颜色值。

实现意义:   不调用非微软第三方工具实现、不生成任何临时文件。
实现价值:   没任何实用价值,纯为技术而挑战看上去不可能的技术。
实现版本:   稍微修改后均可以在CMD与MS-DOS版本上实现同样功能。
关于注释:   下面代码只是显示一堆字符而已,只为思考想法的可实现性。
        如果用于显示特殊文字内容,下个版本可以随意完成,此演示无效。



测试版本: Windows CMD Shell 非全屏模式/全屏模式
      目前不支持纯DOS,因为命令行过长所至,除非使用 Debug E命令直接写内存减少命令长度




[运行方法: 先进入CMD以后,再输入这个批处理的名字运行。]
[      如果在桌面直接鼠标双击运行,则一闪而过不会显示彩色内容]



上面代码没有任何实用价值,这也是偶然间想“挑战”一下那些调用第三方工具才能实现的功能,就想思考那些看上去不可能的事,
以上代码纯属思考着玩的一个想法,贴上和大家一起分享好玩的东东~:)

[ Last edited by redtek on 2006-12-23 at 05:30 PM ]

附件
1.GIF (9.94 KiB)
第2楼 ccwan 发表于 2006-12-19 05:48
金牌会员 发帖 1,160 积分 2,725 来自 河北廊坊
=_=|||
如何实现?
第3楼 redtek 发表于 2006-12-19 05:57
金牌会员 发帖 1,147 积分 2,902
是实现显示任何彩色字符串吗?
第4楼 ccwan 发表于 2006-12-19 05:58
金牌会员 发帖 1,160 积分 2,725 来自 河北廊坊
是啊。
请兄详细说说,我很菜的。
第5楼 yardian 发表于 2006-12-19 06:08
中级用户 发帖 85 积分 305
可惜2003无效,提示:NTVDM遇到一个硬错误。希望能解释一下
第6楼 redtek 发表于 2006-12-19 06:10
金牌会员 发帖 1,147 积分 2,902
1楼代码更改完成,这回可以了:)

[ Last edited by redtek on 2006-12-18 at 05:17 PM ]
第7楼 lxmxn 发表于 2006-12-19 06:22
版主 发帖 4,938 积分 11,386

  兄汇编进步好快,顶一个。以后编一个好的工具给兄弟们用用。呵呵。
第8楼 redtek 发表于 2006-12-19 06:25
金牌会员 发帖 1,147 积分 2,902
多谢lxmxn兄鼓励~:)
第9楼 ccwan 发表于 2006-12-19 06:26
金牌会员 发帖 1,160 积分 2,725 来自 河北廊坊
我还没有试出效果。
汗……
第10楼 redtek 发表于 2006-12-19 06:31
金牌会员 发帖 1,147 积分 2,902
那个代码最后一句我忘了加 PAUSE 暂停了,可能在桌面上一执行完就没了:)
我每次都是在先进入CMD窗口,然后再键入批处理文件名执行的,所以总是忘了Pause~:)
第11楼 chenall 发表于 2006-12-19 06:32
银牌会员 发帖 469 积分 1,276 来自 福建泉州
利用DEBUG.等同于

@echo off

:: 显示单行彩色字符,其色彩值不影响本行以外的任何行
::
:: Var Redtek 2006 - bbs.cn-dos.net
>~debug.src echo.
>>~debug.src echo.A
>>~debug.src echo.MOV,AH,09
>>~debug.src echo.MOV,AL,2A
>>~debug.src echo.MOV,BH,00
>>~debug.src echo.MOV,BL,0E
>>~debug.src echo.MOV,CX,0020
>>~debug.src echo.INT,10
>>~debug.src echo.MOV,BL,0A
>>~debug.src echo.MOV,CX,000A
>>~debug.src echo.INT,10
>>~debug.src echo.INT,20
>>~debug.src echo.
>>~debug.src echo.g
>>~debug.src echo.q
debug<~debug.src>nul
del ~debug.src

只不过这个有生成了临时文件

偶不懂汇编,看不懂上面的是什么意思.
第12楼 ccwan 发表于 2006-12-19 06:32
金牌会员 发帖 1,160 积分 2,725 来自 河北廊坊
我和兄的操作方法一样,但看不到效果,不知为什么。
第13楼 chenall 发表于 2006-12-19 06:33
银牌会员 发帖 469 积分 1,276 来自 福建泉州
在代码后最后加一个pause
第14楼 ccwan 发表于 2006-12-19 06:38
金牌会员 发帖 1,160 积分 2,725 来自 河北廊坊
还是不行。
第15楼 9527 发表于 2006-12-19 06:41
银牌会员 发帖 438 积分 1,185 来自 北京
真希望Redtek兄能够做出漂亮的P处理动画那就更牛XXXXXXXXXXXXXXXXXX了,继续努力吧!!!!!!!
1 2 3  下一页
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023