中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 请高手指正 运行中发现有问题
作者:
标题: 请高手指正 运行中发现有问题 上一主题 | 下一主题
nanhui112
初级用户





积分 127
发帖 59
注册 2007-11-13
状态 离线
『楼 主』:  请高手指正 运行中发现有问题

@echo off &title [code by nh..] mode con cols=30 lines=10 set /a a=%random%%%10 color %a%A set b=4 :num for /f "tokens=2 delims=: " %%i in ("%time%") do (set a=%%i ) set a=%a:~1% set /a key=%a%-3 cls echo. set /p mm=输入密码 if %b% equ 0 goto :ef if not "%mm%" == "%key%" goto :nu start /im ttplayer.exe &ping -n 2 127.1>nul &exit :nu set /a b-=1 cls echo 你的密码错误,继续吗? :ok echo 当前%b%次 有效输入机会! echo. Set /p Y/N=请输入[Y/N] if "%Y/N%" =="" goto :err1 if /i %Y/N%==Y goto :num if /i %Y/N%==N goto :eof goto :erro :erro cls ping -n 2 127.1>nul echo 你的输入不正确! Set /p t=是否继续 [Y/N] echo. if "%T%"=="" goto :erro if /i %T%==Y goto :ok if /i %T%==N goto :eof goto :erro :err1 cls echo. echo 你的输入为空,请等候三秒! ping -n 3 127.1>nul &cls &goto :ok :ef cls echo. @echo 输入超过最大允许次数 echo. &echo 请按任意键退出 ! pause>nul :: 要注意 输入密码不能超过一分钟,密码为当前计算机时间**:*?的问号数 减去 3 的值! =============================================== =============================================== 本人为拉学习批处理 ,写啦这个三set goto 语句,每次运行时 都起作用 但是第二次的时候 直接按回车键 也进行跳转!!! 俺太菜拉 不懂 谢谢回复 ~~~


2007-12-15 11:52
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
zh159
金牌会员




积分 3687
发帖 1467
注册 2005-8-8
状态 离线
『第 2 楼』:  

每次输入之前先清空 set 变量= set /p 变量=




2007-12-15 13:34
查看资料  发短消息  网志   编辑帖子  回复  引用回复
nanhui112
初级用户





积分 127
发帖 59
注册 2007-11-13
状态 离线
『第 3 楼』:  

呵呵 zh159 我懂啦 非常谢谢你


2007-12-16 10:17
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: