返回列表 发帖

[工具合集] 发个多功能批处理第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,
pauseCOPY
压缩包内有一个名为"bmp.bmp"的BMP文件和"icon.ico"图标文件,演示用的~

好啦介绍的七七八八了,请大家踊跃试用啊~(照顾我下这个C新手嘛~)
源代码呢。。看看大家的反应如何吧~(源代码很多注释啊,得整理整理下~)

EXE+演示文件这里下载:
http://pan.baidu.com/share/link?shareid=169992669&uk=1124163200
1

评分人数

    • CrLf: 感谢分享!PB + 10 技术 + 1

建议求专求精
同时有标准且友好的接口
这样的命令行工具才真正能深入人心
因此建议拆分为多个命令行工具
天的白色影子

TOP

回复 2# qzwqzw


哦~谢谢大大的建议~
怎样说
同时有标准且友好的接口
呢?

我还是个C新手啊。。请多多多指教。。

TOP

受用了,好东西,仔细领教一个先吧
q 真的很看好你哦

TOP

很不错的工具,谢谢分享

TOP

运行时死在了这里:echo  现在演示控制台支持鼠标功能

TOP

回复 6# shenlong


    试试点击CMD黑框区域,批处理要接受到鼠标信息才会返回!

TOP

非一般的强大!我给你跪下了!!

TOP

本帖最后由 email10t 于 2015-3-13 13:09 编辑

好像就是这个:
http://www.bathome.net/redirect. ... 4064&ptid=34654

TOP

感谢分享!

TOP

返回列表