2011-12-20 85 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 

這將爲你的用戶名和密碼都

我希望這有助於一個文本文件。 :)