2013-05-21 78 views
2

我想讓這個先進的批處理文件具有簡單登錄系統的角色,這意味着你可以在這個批處理文件中註冊,並且你的數據被導出到另一個批處理文件,在變量下,並且當你登錄時,帶有變量的文件被調用,設置你的密碼,以便你可以登錄,然後做其他的事情。全部在一個批處理文件中只有外部文件中的密碼。我嘗試編碼所有這些,並且它一直運行到您必須編寫密碼才能登錄的步驟:當我輸入密碼時(例如,它是「nekav」)(我確定這是正確的,當我輸入時)該批文件寫道「nekav意外/無人蔘與」並關閉。進行批量登錄/註冊系統?代碼呢?

PS:給一個變量下保存密碼在另一個文件中,我使用:echo set pass1=pass1a (pass1a是先前輸入的密碼,對登記)

無法找到錯誤中的代碼,我有它全部上傳到這裏: http://pastebin.com/RLffPsqG

你能告訴我,我的錯誤在哪裏?

+1

您應該將_relevant_部分代碼放在這裏,而不是pastebin – jeb

+1

使用'pause'命令並找出哪條線路導致問題。 – foxidrive

+0

謝謝,foxidrive。我將 – Swillfreat

回答

1

我爲此感到自豪:) 這有兩個不同的文件:處理登錄的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

太棒了! **問題:它可以處理更多的兩個「帳戶」嗎?**我不承認你寫的所有命令,但我會檢查他們以後的意思! – Swillfreat