[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
都大同小异啊!!!!!

TOP

  1. set mm=123
  2. set /p p=请输入密码:
  3. if "%p%"=="123" echo  登陆成功! else 登陆失败
  4. pause
复制代码
1

评分人数

TOP

楼上的if defined 什么意思?看不懂. . . .
setlocal enabledelayedexpansion

TOP

小弟新手也來試試

  1. @echo off
  2. cls
  3. set /p password=請輸入新密碼:
  4. if defined password call :check
  5. echo 您沒有輸入密碼!
  6. pause>nul
  7. call %0
  8. :check
  9. cls
  10. set /p var_password=請輸入您的密碼:
  11. if %var_password% == %password% (
  12. echo 密碼輸入正確!!
  13. pause>nul
  14. echo 退出程式
  15. pause>nul
  16. exit) else (
  17. echo 密碼輸入錯誤! 請重新輸入密碼!
  18. pause>nul
  19. goto :check)
复制代码

[ 本帖最后由 strong12345 于 2009-2-5 12:08 编辑 ]
1

评分人数

    • wxcute: 不错不错。牛年大吉!PB + 3

TOP

回复 3楼 的帖子

:mima
set "var=123"
set /p "sss="请输入密码
if /i %sss% equ %var%&&echo 登录成功 || 密码不对
pause
goto mima

怎样不知道可以不

TOP

有点晕哦~我倒~~~~~~

TOP

  1. @echo off
  2. set pwd=123
  3. set num=0
  4. :loop
  5. cls
  6. set /a num=%num%+1
  7. echo 你有3次输入机会
  8. if %num% gtr 3 (echo 三次输入错误,程序退出!&pause&exit)
  9. echo 第 %num% 次输入!
  10. set input=
  11. set /p input=请输入密码:
  12. if "%input%"=="" (echo 不能为空!&pause&goto loop)
  13. echo "%input%"|findstr "[!@#$%%^&*()+|\\=]" >nul 2>nul&&(echo 特殊字符&pause&goto loop)
  14. if not "%input%"=="%pwd%" (echo 错误!&pause&goto loop) else (echo 正确!&pause)
复制代码
1

评分人数

    • wxcute: 怎么这段好像是我写的?o(∩_∩)o 新春快乐PB + 3

TOP

  1. @echo off
  2. set 设定MM=123
  3. set /p 输入MM=请输入密码:
  4. if %输入MM%==%设定MM% (echo 正确) else echo 错误
  5. pause
复制代码
1

评分人数

TOP

又写了一个,不过还不太熟练,高手多指点;

  1. @echo off
  2. color 1f&mode con cols=50 lines=3
  3. :kaishi
  4. cls
  5. if exist 1.sys (goto ok)
  6. set /p a1=请设置密码:
  7. if not defined a1 (goto nc)
  8. set /p a2=请再次输入:
  9. if not defined a2 (goto nc)
  10. if %a1% neq %a2% goto bu
  11. echo %a2% >1.sys
  12. attrib 1.sys +s +h
  13. cls
  14. echo 恭喜你,密码设置成功;
  15. pause>nul
  16. goto kaishi
  17. :ok
  18. cls
  19. set /P a3=请输入密码:
  20. for /f %%i in (1.sys) do set a4=%%i
  21. if "%a3%"=="%a4%" goto zhengque
  22. goto err
  23. pause>nul
  24. :zhengque
  25. cls
  26. echo 输入正确,你现在可以开始使用本程序了;
  27. set /p a5=请选择:“1”删除密码“2”使用本程序“3”退出程序
  28. if "%a5%"=="1" goto shanchu
  29. if "%a5%"=="2" goto shiyong
  30. if "%a5%"=="3" goto tuichu
  31. cls
  32. echo 无效操作;
  33. pause>nul
  34. goto zhengque
  35. :shiyong
  36. cls
  37. echo 程序使用完毕,现在退出;
  38. pause>nul
  39. :tuichu
  40. exit
  41. :nc
  42. cls
  43. echo 你没有输入任何字符,按任意键重新输入;
  44. pause
  45. goto kaishi
  46. :bu
  47. cls
  48. echo 你两次输入不一致,请重新输入;
  49. pause
  50. goto kaishi
  51. :err
  52. cls
  53. echo 你输入的密码错误,请重新输入;
  54. pause
  55. goto kaishi
  56. :shanchu
  57. cls
  58. del 1.sys /s /q /f /ah /as >nul
  59. echo 密码清除成功,按任意键可以重新设置密码;
  60. pause>nul
  61. goto kaishi
复制代码
1

评分人数

    • wxcute: 把 简易 二字演义得“淋漓尽致”阿。PB + 1

TOP

这个是原创的,一个帖一个帖看下来没看到重复的!

@echo off
:kaishi
set /p a=要使用本程序需要先输入密码:
if "%a%"=="214968959" goto zhengque
echo 输入错误
pause>nul
goto kaishi
:zhengque
echo 输入正确
pause>nul
1

评分人数

    • wxcute: 不要骄傲哦,除了没用 code 括起来,与大家 ...PB + 1

TOP

引用wxcute 话:
在标签:start下加句[code]set psw=[code]就可以了,另:标签最好不用保留字,加个线_start或用其他如begin好些

谢谢。成功验证你的话!下次避免出现保留字,多谢提醒。同时让我明白了,原来前面加下划线的意义了。

TOP

@echo off
:start
set /p psw=请输入密码(三位):
if "%psw%" equ "123" (echo pass!) else (echo wrong,please input again!)
set "psw="
goto start

哈哈,不好意思,解决好了。来出来和大家分享一下。
让psw的变量置空值就行,可以规避以上问题。

TOP

代码如下:
@echo off
:start
set /p psw=请输入密码(三位):
if "%psw%" equ "123" (echo pass!) else (echo wrong,please input again!)
goto start

疑问:
1.如果先键入123,显示 pass,同时再跳到请输入密码:,此时我直接回车,也显示pass  (显然这是很危险的。)
2.所以如何屏蔽这种情况呢?  多谢指点!
1

评分人数

    • wxcute: 在标签:start下加句[code]set psw=[code]就 ...PB + 2

TOP

楼上的代码在登录成功的情况下还继续执行loop循环,更新代码如下:
@echo off
title Edit By steven007
color 1a &mode con cols=35 lines=10
echo ------------密码检验--------------
set i=3
:loop
set num=101
echo.
set /p a=   请输入密码:
if %a%==%num% (echo    登录成功&goto right) else (echo    密码不对 )
set /a i=i-1
if %i%==0 goto exit
echo    你还可以尝试%i%次!
goto loop
:exit
echo    累计三次输入错误,任意键退出!
pause>nul
:right
pause>nul

TOP

限制最多尝试登录次数为3的密码检验登录:
@echo off
title Edit By steven007
color 1a &mode con cols=35 lines=10
echo ------------密码检验--------------
set i=3
:loop
set num=101
echo.
set /p a=   请输入密码:
if %a%==%num% (echo    登录成功) else (echo    密码不对 )
set /a i=%i%-1
if %i%==0 goto exit
echo    你还可以尝试%i%次!
goto loop
:exit
echo    累计三次输入错误,任意键退出!
pause>nul

TOP

返回列表