因回答一位兄弟的问题有感而做,注:原始密码为abcdefghijklmnop
@echo off
set code=abcdefghijklmnopqrstuvwxyz0123456789-_
for /f "tokens=2" %%i in (%~nx0) do set passwords=%%i
:begin
cls&set /p password= 请输入密码:
if "%password%"=="%passwords%" goto set
cls&echo 密码错误&ping /n 2 127.1>nul&goto begin
:set
set select=2
cls&set /p select= 是否更改密码(默认回车为不更改):(1. 更改 2.不更改)
if %select% equ 1 goto change
if %select% equ 2 goto ok
if %select% neq 1 if %select% neq 2 goto wrong
:change
set /a n=%random%%%38,m+=1
call,set pwd=%pwd%%%code:~%n%,1%%
if %m% lss 16 goto change
echo :: %pwd%>>%~nx0
cls&echo 请保管好你的新密码:%pwd%&pause&goto :eof
<img src="images/smilies/face-surprise.png" align="absmiddle" border="0">k
cls&echo 密码正确!&pause&goto :eof
:wrong
cls&echo 输入无效,请正确选择输入!&ping /n 2 127.1>nul&goto set
:: abcdefghijklmnop
Last edited by zw19750516 on 2008-4-18 at 01:58 PM ]