![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-13 12:37 |
共 47,811 主题排行 / 349,897 发帖 / 今日 0 篇 / 48,256 会员排行 |
| DOS学习入门 & 精彩文章 (教学室) » 新手来报道,拿出作品请评 |
| 可打印版本 4,052 / 31 |
| 第1楼 zzghost | 发表于 2006-12-24 06:10 |
| 初级用户 发帖 14 积分 43 | |
|
新手来报道,拿出作品请评 最近为了方便机房老师发送消息,作为管理员的我作了个小东西给她用,请大家评下,最好提出改良方案 小弟谢啦!
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~`` color 9d @echo off @attrib 消息发送.bat +h +s MODE con: COLS=20 LINES=2 MODE con: COLS=21 LINES=3 MODE con: COLS=22 LINES=4 MODE con: COLS=23 LINES=5 MODE con: COLS=24 LINES=6 MODE con: COLS=25 LINES=7 MODE con: COLS=26 LINES=8 MODE con: COLS=27 LINES=9 MODE con: COLS=28 LINES=10 MODE con: COLS=29 LINES=11 MODE con: COLS=30 LINES=12 MODE con: COLS=31 LINES=13 MODE con: COLS=32 LINES=14 MODE con: COLS=33 LINES=15 MODE con: COLS=34 LINES=16 MODE con: COLS=35 LINES=17 MODE con: COLS=36 LINES=18 MODE con: COLS=37 LINES=19 MODE con: COLS=38 LINES=20 MODE con: COLS=39 LINES=21 MODE con: COLS=40 LINES=22 MODE con: COLS=41 LINES=23 MODE con: COLS=42 LINES=24 MODE con: COLS=43 LINES=25 MODE con: COLS=44 LINES=26 MODE con: COLS=45 LINES=25 MODE con: COLS=46 LINES=24 MODE con: COLS=47 LINES=23 MODE con: COLS=48 LINES=22 MODE con: COLS=49 LINES=21 MODE con: COLS=50 LINES=20 @sc config Messenger start= auto @net start messenger cls if exist zto.bat (goto :check) else goto :nozto :check if exist to.bat (goto :run) else goto :noto :nozto rem 写文件到zto.bat echo title 发送消息>zto.bat echo @color 9f>>zto.bat echo echo off>>zto.bat echo cls>>zto.bat echo MODE con: COLS=50 LINES=20>>zto.bat @echo set tm1=%%time:~0,2%%>>zto.bat @echo set tm2=%%time:~3,2%%>>zto.bat @echo set tm3=%%time:~6,2%%>>zto.bat @echo ECHO #####%%date%% %%tm1%%点%%tm2%%分%%tm3%%秒#####>>zto.bat echo echo ***@@~~~##★☆☆发送消息☆☆★##~~~@@***>>zto.bat echo echo 本程序的使用格式如下:>>zto.bat echo echo.>>zto.bat echo echo to >>zto.bat echo echo.>>zto.bat echo echo 要返回选择常用请键入"b">>zto.bat attrib zto.bat +h +s :noto rem 写文件至to.bat echo @ color 9f>>to.bat echo @ net send %%1 %%2 >>to.bat echo @ set tm1=%%time:~0,2%%>>to.bat echo @ set tm2=%%time:~3,2%%>>to.bat echo @ set tm3=%%time:~6,2%%>>to.bat echo @ ECHO %%date%% %%tm1%%点%%tm2%%分%%tm3%%秒^>^>记录.txt>>to.bat echo @echo ☆~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~☆^>^>记录.txt >>to.bat echo @echo 消息___"%%2"___^>^>记录.txt>>to.bat echo @echo 发送到了计算机___%%1__^>^>记录.txt>>to.bat echo @echo.^>^>记录.txt >>to.bat echo @echo.^>^>记录.txt >>to.bat echo @echo.^>^>记录.txt >>to.bat echo @echo.^>^>记录.txt >>to.bat echo @attrib 记录.txt +h +s>>to.bat echo cls>>to.bat echo 消息发送.bat>>to.bat attrib to.bat +h +s :run echo cmd /k 消息发送.bat>b.bat attrib b.bat +h +s cls title 发送消息 @color 9f echo off cls MODE con: COLS=50 LINES=20 set tm1=%time:~0,2% set tm2=%time:~3,2% set tm3=%time:~6,2% ECHO %date% %tm1%点%tm2%分%tm3%秒 @echo *****************快捷操作******************** @ECHO 1. 试验时间到请各位存盘并随手关闭计算机-到402 @ECHO 2. 请打扫卫生的同学留一下-到402 @ECHO 3. 请不要随地扔垃圾果皮纸屑-到402 @ECHO 6. 退出 @ECHO 7. 显示所有消息记录 @ECHO 8. 显示最近消息记录 @ECHO 9. 清空消息记录 @ECHO 0. 不作选择手动输入发送内容 @SET Choice= @SET /P Choice=选择: rem 设定变量"Choice"为用户输入的字符 IF NOT "%Choice%"=="" SET Choice=%Choice:~0,1% rem 如果输入大于1位,取第1位,比如输入132,则返回值为1 IF /I "%Choice%"=="1" GOTO 1 IF /I "%Choice%"=="2" GOTO 2 IF /I "%Choice%"=="3" GOTO 3 IF /I "%Choice%"=="6" GOTO 6 IF /I "%Choice%"=="7" GOTO 7 IF /I "%Choice%"=="8" GOTO 8 IF /I "%Choice%"=="9" GOTO 9 IF /I "%Choice%"=="0" GOTO 0 else cmd /k zto.bat :1 to * 试验时间到请各位存盘并随手关闭计算机 :2 to * 请打扫卫生的同学留一下 :3 to * 请不要随地扔垃圾,果皮纸屑请放到门口的垃圾桶内,谢谢合作! :6 MODE con: COLS=50 LINES=20 MODE con: COLS=49 LINES=21 MODE con: COLS=48 LINES=22 MODE con: COLS=47 LINES=23 MODE con: COLS=46 LINES=24 MODE con: COLS=45 LINES=25 MODE con: COLS=44 LINES=26 MODE con: COLS=43 LINES=25 MODE con: COLS=42 LINES=24 MODE con: COLS=41 LINES=23 MODE con: COLS=40 LINES=22 MODE con: COLS=39 LINES=21 MODE con: COLS=38 LINES=20 MODE con: COLS=37 LINES=19 MODE con: COLS=36 LINES=18 MODE con: COLS=35 LINES=17 MODE con: COLS=34 LINES=16 MODE con: COLS=33 LINES=15 MODE con: COLS=32 LINES=14 MODE con: COLS=31 LINES=13 MODE con: COLS=30 LINES=12 MODE con: COLS=29 LINES=11 MODE con: COLS=28 LINES=10 MODE con: COLS=27 LINES=9 MODE con: COLS=26 LINES=8 MODE con: COLS=25 LINES=7 MODE con: COLS=24 LINES=6 MODE con: COLS=23 LINES=5 MODE con: COLS=22 LINES=4 MODE con: COLS=21 LINES=3 MODE con: COLS=20 LINES=2 exit :7 记录.txt goto run :8 type 记录.txt PAUSE b.bat :9 echo 确认要这么做请任意键,否则连续按下ctrl+c两次回选单 @echo rem 响铃 PAUSE attrib 记录.txt -h -s -a attrib *.bak -h -s -a @copy/y 记录.txt + *.bak %tm1%-%tm2%-%tm3%.ba_ @del *.bak @ren *.??_ *.??k @attrib %tm1%-%tm2%-%tm3%.bak +h +s +a @echo %date% %tm1%点%tm2%分%tm3%秒 前记录已清空!>记录.txt echo 操作已经完成!~ attrib 记录.txt +h +s +a PAUSE :0 cmd /k zto.bat ~~~~~~~~~~~~~~~~ 下载地址:http://zhenlove.com.cn/cndos/fileup/files/消息发送『最终版』.rar [ Last edited by zzghost on 2006-12-23 at 05:19 PM ] |
|
| 第2楼 electronixtar | 发表于 2006-12-24 06:45 |
| 铂金会员 发帖 2,672 积分 7,493 | |
|
为什么不用 for 呢~
|
|
| 第3楼 zzghost | 发表于 2006-12-24 07:08 |
| 初级用户 发帖 14 积分 43 | |
|
HAI 还没有学会for的用法
帮我弄下我看看是怎么用 [ Last edited by zzghost on 2006-12-23 at 06:12 PM ] |
|
| 第4楼 lxmxn | 发表于 2006-12-24 12:27 |
| 版主 发帖 4,938 积分 11,386 | |
|
不用for就是纯体力活了。呵呵~ |
|
| 第5楼 hake | 发表于 2006-12-24 21:49 |
| 初级用户 发帖 43 积分 103 | |
|
能不能用下面几个语句代替那一大串
for %%a in(20,1,50)do MODE con: COLS="%a" for %%b in(3,1,21)do MODE con: LINES="%b" 我是菜鸟,刚学,连for的基本格式也不懂,这是我评我的主观意识写的,希望大家多多修改! |
|
| 第6楼 zzghost | 发表于 2006-12-25 04:05 |
| 初级用户 发帖 14 积分 43 | |
|
测试的时候说 是“此时不应该有(20” 就这样
其他还有没有什么意见建议啊 给点啊 |
|
| 第7楼 hake | 发表于 2006-12-25 04:58 |
| 初级用户 发帖 43 积分 103 | |
|
我测试的时候也会出现这个东西,不清楚
|
|
| 第8楼 lxmxn | 发表于 2006-12-25 06:02 |
| 版主 发帖 4,938 积分 11,386 | |
这部分用下面的代码来代替比较简洁吧。 [ Last edited by lxmxn on 2006-12-24 at 07:08 PM ] |
|
| 第9楼 hake | 发表于 2006-12-25 06:37 |
| 初级用户 发帖 43 积分 103 | |
Originally posted by lxmxn at 2006-12-24 05:02 PM: |
|
| 第10楼 lxmxn | 发表于 2006-12-25 06:46 |
| 版主 发帖 4,938 积分 11,386 | |
Originally posted by hake at 2006-12-24 17:37: 用for将会比这个复杂,不信你自己试试就知道了。 |
|
| 第11楼 hake | 发表于 2006-12-25 07:04 |
| 初级用户 发帖 43 积分 103 | |
Originally posted by lxmxn at 2006-12-24 05:46 PM: 对我来说难,还是要麻烦你啊! |
|
| 第12楼 hake | 发表于 2006-12-25 07:10 |
| 初级用户 发帖 43 积分 103 | |
|
如果要用for语句来写,在语句中怎么执行
mode con cols= |
|
| 第13楼 lxmxn | 发表于 2006-12-25 07:31 |
| 版主 发帖 4,938 积分 11,386 | |
|
|
|
| 第14楼 redtek | 发表于 2006-12-25 09:03 |
| 金牌会员 发帖 1,147 积分 2,902 | |
|
楼主这个想法有意思~:)
|
|
| 第15楼 zzghost | 发表于 2006-12-26 03:24 |
| 初级用户 发帖 14 积分 43 | |
|
谢谢大家的指点,但是如果我就要象我那种有一个回弹效果又要怎么遍?
14楼的兄弟,因为这个机房的老师是一个中年女士 所以~~~~ |
|
| 1 2 3 下一页 |
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |