标题: [工具合集] 发个多功能批处理第3方 [打印本页]
作者: garyng 时间: 2012-6-11 22:15 标题: 发个多功能批处理第3方
最近研究起了 C,学着学着就心血来潮地写了这个批处理第3方 - gBatch话说 真的很感谢 defanive ~ 他的百度空间真的是太多好康了~(怎么最近没更新了啊?)
好啦,废话不多说,来介绍这个 批处理集合工具~
其实呢,这东东里面的功能,这论坛都应该有相应的第3方了吧~
我只是把他们全都集合起来,用自己的代码实现它们~
这个exe体积14KB,功能有哪些呢?看看吧~
1、禁止用户关闭功能
2、Message Beep
3、设置本控制台的标题
4、闪动窗体
5、设置本控制台的图标功能
6、窗体置顶
7、取消窗体置顶
8、将BMP文件显示在屏幕上
9、移动光标
10、开启文件夹/文件/链接
11、延迟
12、字符计算
13、字符填充
14、以特定颜色填充输出
15、以特定的颜色输出文本
16、控制台支持鼠标
17、字串转换为大写
18、字串转换为小写
19、将ASCII转换为字符
因为才刚学C,所以不太会优化,调用速度。。。大家测试下吧~
双击exe有英文的帮助,压缩包内有个批处理演示工具
贴代码(很久没碰批处理了,代码很烂。。):- @echo off
- set t="gBatch"
- title %t%测试程序 - By GaryNg
- echo 测试禁止用户关闭功能
- echo %t% /d
- %t% /d
- echo 请试试点击关闭按钮,关闭不到则测试成功
- pause
- cls
- echo 现在测试 Message Beep 功能
- echo %t% /b [64^|48^|32^|16]
- echo 64 - 标准铃声
- %t% /b 64
- pause
- echo 48 - 系统星号声
- %t% /b 48
- pause
- echo 32 - 系统提问声
- %t% /b 32
- pause
- echo 16 - 系统惊叹声
- %t% /b 16
- pause
- cls
- echo 设置本控制台的标题
- echo %t% /s "Title"
- echo "Title" - 预设值的标题
- %t% /s "标题栏变了么?"
- echo 标题栏改变即测试成功
- pause
- cls
- echo 现在测试闪动窗体功能
- echo %t% /f "Title" FlashTimes
- echo "Title" - 与让其闪动的窗口标题
- echo 如果 "Title" 等于 "me"即等于闪动本窗口
- echo FlashTimes - 欲闪动的次数
- echo,
- pause
- echo 现在开启一个标题为Testing的CMD
- start cmd /k title Testing
- echo 现在将闪动该窗体 20次
- %t% /f Testing 20
- pause
- echo 现在闪动本窗口20次
- %t% /f me 20
- pause
- cls
- echo 现在测试设置本控制台的图标功能
- echo %t% /sf "IconFile"
- echo "IconFile" 图标文件名
- %t% /sf icon.ico
- echo 标题图标改变了,即测试成功
- pause
- cls
- echo 现在测试窗体置顶功能
- echo %t% /ut "Title"
- echo "Title" - 欲置顶的窗口的标题(如果"Title"等于"me",代表将本控制台设置置顶)
- echo 现在将本控制台设置为置顶状态
- %t% /ut me
- echo 试试看点击其他窗体,本窗体没被覆盖代表测试成功
- pause
- cls
- echo 现在测试取消窗体置顶功能
- echo /unt "Title"
- echo "Title" - 欲取消置顶的窗口的标题(如果"Title"等于"me",代表将本控制台设置取消置顶)
- echo 现在为本控制台取消置顶
- %t% /unt me
- pause
- cls
- echo 现在测试将BMP文件显示在屏幕上功能
- echo %t% /p "bmpFile" bmpWidth bmpHeight ShowTime DestX DestY bmpX bmpY
- echo,
- echo "bmpFile" - BMP文件路径
- echo bmpWidth - 在屏幕上显示显示BMP文件的宽度(0=默认)
- echo bmpHeight - 在屏幕上显示显示BMP文件的高度(0=默认)
- echo ShowTime - 显示BMP文件的时间
- echo DestX - 在屏幕上显示BMP文件的坐标X
- echo DestY - 在屏幕上显示BMP文件的坐标Y
- echo bmpX - 在屏幕上显示BMP文件的开始坐标X
- echo bmpY - 在屏幕上显示BMP文件的开始坐标Y
- pause
- echo 现在屏幕上的(0,0)显示一个BMP文件,显示时间为1秒
- %t% /p bmp.bmp 0 0 1000 0 0 0 0
- pause
- cls
- echo 现在测试移动光标功能
- echo %t% /cur Columns Rows
- echo Columns - 欲将光标移动到的行数
- echo Rows - 欲将光标移动到的列数
- pause
- echo 先输出一堆字符以演示此功能
- for /l %%i in (1 1 10) do (
- for /l %%j in (1 1 80) do (
- set /p "a=0"< nul
- )
- )
- echo 现在将光标移到(0,8)处,并输出Hello,World!
- %t% /cur 0 8
- echo Hello,World!
- pause
- cls
- echo 现在演示开启文件夹/文件/链接
- echo %t% /open "File/Link" Mode
- echo "Folder/File/Link" 一个链接或文件等等
- echo Mode = 0 - Hide
- echo Mode = 1 - NormalFocus
- echo Mode = 3 - MaximizedFocus
- echo Mode = 4 - NormalNoFocus
- echo Mode = 6 - MinimizedNoFocus
- pause
- echo 现在开启一个文件
- %t% /open "bmp.bmp" 1
- pause
- echo 现在开启一个链接
- %t% /open "www.baidu.com"
- pause
- cls
- echo 现在演示延迟功能
- echo %t% /sleep Milliseconds、
- echo Milliseconds - 延迟的时间(单位:微秒)
- echo 现在测试延迟3秒
- %t% /sleep 3000
- pause
- cls
- echo 现在演示字符计算功能
- echo 返回字符的字节数,值储存在%%errorlevel%%中
- echo %t% /lenb "String"
- echo "String" - 字串
- pause
- echo 显示"Hello,World!"的字节数
- %t% /lenb "Hello,World!"
- echo "Hello,World!"的字节数为:%errorlevel%
- pause
- cls
- echo 现在演示 字符填充功能
- echo %t% /fs CharToFill LengthToFill Columns Rows
- echo CharToFill = 需要填充的字符的ASCII码
- echo LengthToFill = 要填充的字符数量
- echo 现在演示从(0,6)开始以字符“0”(ASCII码为48)填充80个
- pause
- %t% /fs 48 80 0 6
- %t% /cur 0 8
- pause
- cls
- echo 现在演示 以特定颜色填充输出
- echo %t% /fo Columns Rows Color NumOfCharToFill
- echo NumOfCharToFill = 要填充的字符数量
- echo Color = 1 - Foreground Blue
- echo Color = 2 - Foreground Green
- echo Color = 4 - Foreground Red
- echo Color = 8 - Foreground Intensity
- echo Color = 16 - Background Blue
- echo Color = 32 - Background Green
- echo Color = 64 - Background Red
- echo Color = 128 - Background Intensity
- echo Color = 1024 - Horizontal Grid
- echo Color = 2048 - Left Vertical Grid
- echo Color = 4096 - Right Vertical Grid
- echo Color = 32768 - Underscore
- echo 可以使用“或”操作(^&)来合成不同的颜色/属性
- echo 比如我们要字体为亮青色,背景为亮白色
- set /a ColorAttr=2"|"8"|"16"|"32"|"64"|"128
- echo 可以这样:set /a var=2"|"8"|"16"|"32"|"64"|"128
- echo 现在将(0,3)以亮青色字体,亮白色的背景填充960个字符
- %t% /fo 0 3 %ColorAttr% 960
- pause
- cls
- echo 现在演示以特定的颜色输出文本
- echo %t% /txto "String" Colums Rows Color
- echo "String" = 要输出的文本
- echo Color = 1 - Foreground Blue
- echo Color = 2 - Foreground Green
- echo Color = 4 - Foreground Red
- echo Color = 8 - Foreground Intensity
- echo Color = 16 - Background Blue
- echo Color = 32 - Background Green
- echo Color = 64 - Background Red
- echo Color = 128 - Background Intensity
- echo Color = 1024 - Horizontal Grid
- echo Color = 2048 - Left Vertical Grid
- echo Color = 4096 - Right Vertical Grid
- echo Color = 32768 - Underscore
- echo 可以使用“或”操作(^&)来合成不同的颜色/属性
- echo 比如我们要字体为亮青色,背景为亮白色
- set /a ColorAttr=2"|"8"|"16"|"32"|"64"|"128
- echo 可以这样:set /a var=2"|"8"|"16"|"32"|"64"|"128
- echo Color = //default 表示用默认的颜色
- echo 现在已字体为亮青色,背景为亮白色在(0,21)输出Hello,World!
- %t% /txto "Hello,World!" 0 21 %ColorAttr%
- pause
- cls
- echo 现在演示控制台支持鼠标功能
- echo %t% /mouse
- echo 点击有返回鼠标坐标
- %t% /mouse
- pause
- cls
- echo 现在演示将字串转换为大写
- echo %t% /upcase "String"
- echo "String" = 字串
- echo 将"Hello,World!"全转换为大写
- %t% /upcase "Hello,World!"
- echo,
- pause
- cls
- echo 现在演示将字串转换为小写
- echo %t% /lowcase "String"
- echo "String" = 字串
- echo 将"Hello,World!"全转换为小写
- %t% /lowcase "Hello,World!"
- echo,
- pause
- cls
- echo 现在演示讲ASCII转换为字符
- echo %t% /asciito ASCIICode
- echo ASCIICode = 要转换的ASCII码
- echo 将ASCII值97转换为字符
- %t% /asciito 97
- echo,
- pause
复制代码
压缩包内有一个名为"bmp.bmp"的BMP文件和"icon.ico"图标文件,演示用的~
好啦介绍的七七八八了,请大家踊跃试用啊~(照顾我下这个C新手嘛~)
源代码呢。。看看大家的反应如何吧~(源代码很多注释啊,得整理整理下~)
EXE+演示文件这里下载:
http://pan.baidu.com/share/link?shareid=169992669&uk=1124163200
作者: qzwqzw 时间: 2012-6-12 20:53
建议求专求精
同时有标准且友好的接口
这样的命令行工具才真正能深入人心
因此建议拆分为多个命令行工具
作者: garyng 时间: 2012-6-12 23:13
回复 2# qzwqzw
哦~谢谢大大的建议~
怎样说呢?
我还是个C新手啊。。请多多多指教。。
作者: pinke8 时间: 2012-7-7 17:47
受用了,好东西,仔细领教一个先吧
作者: hnfeng 时间: 2012-8-15 16:46
很不错的工具,谢谢分享
作者: shenlong 时间: 2012-9-9 15:38
运行时死在了这里:echo 现在演示控制台支持鼠标功能
作者: garyng 时间: 2012-9-9 22:48
回复 6# shenlong
试试点击CMD黑框区域,批处理要接受到鼠标信息才会返回!
作者: wsguibu 时间: 2013-12-30 19:59
非一般的强大!我给你跪下了!!
作者: email10t 时间: 2015-3-12 11:25
本帖最后由 email10t 于 2015-3-13 13:09 编辑
好像就是这个:
http://www.bathome.net/redirect. ... 4064&ptid=34654
作者: email10t 时间: 2015-3-31 18:06
感谢分享!
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |