2011-12-20 57 views
0

好吧,所以继承人我试图做。我正在尝试使用用户输入登录的批处理文件。我希望能够创建一个新的帐户。我有一个想法,我只是不知道如何去执行它。我有用户输入自己所需的用户名和密码,并将其保存为文本文件,像这样:需要帮助创建密码/用户名系统与批

@echo off 
set /p user=Enter your desired username: 
set /p pass=Enter your desired password: 
echo %user% >> log.txt 
echo %pass% >> log.txt 

这对我来说工作得很好,但现在我想要做的是调用了这两条线,使当他们输入正确的用户名和密码时,它会将它们带到他们的菜单中。 我知道一个事实,这个电话不能很好地工作。有没有办法做我想做的事情?

P.S.我知道txt文件不安全。我有办法解决这个问题。

回答

1

你可以做到这一点,以恢复保存的值:

(
set /P savedUser= 
set /P savedPass= 
) < log.txt 

这样:

if "%user%" == "%savedUser%" if "%pass%" == "%savedPass%" goto accessGranted 

另一种方式来保存这些值是这样的:

echo set savedUser=%user%> log.bat 
echo set savedPass=%pass%>> log.bat 

,并收回保存的值:

call log 
0

我非常自豪的这:)这几乎是一个彻底的检修你的方法。 这有两个不同的文件:处理登录的login.bat和处理注册的login2.bat。 login.bat:

@echo off 
choice /c:RL /m "Choose an option: Register (R) or Login (L).: 
if errorlevel 2 goto login 
if errorlevel 1 goto register 
:register 
start /wait C:\[path]\login2.bat 
cls 
goto login 
:in 
cls 
echo Welcome %u% 
echo. 
echo Bla Bla Bla or start "a program" 
pause 
exit 
:login 
set /p u=Username 
set /p p=Password 

和login2.bat:

@echo off 
:a 
set /p a="Choose a Username" 
set /p b="Choose a Password" 
echo. 
choice /m "Are you sure you would like your Username to be %a% and your Password to be %b%?" 
if errorlevel 2 goto a 
set q="if %%u%% equ %a% if %%p%% equ %b% goto in" 
for /f "tokens=*" %%I in (%q%) do set m=%%I 
echo %m% >>C:\[path]\login.bat 
exit 

之所以:中,它处理你登录成功后必须在中间而不是在发生什么标签login.bat的结尾是为了使用户名/密码组合可以被追加到:login标签。显然你可以添加其他装饰并更改文件的名称,但这是我的基本设计。 希望这有助于!

0

这是我做的

@echo off 
:: some code here 
set /p username=please create a username: 
set /p password=please create a password: 
echo %username%>username.txt 
echo %password%>password.txt 

这将为你的用户名和密码都

我希望这有助于一个文本文件。 :)