Sorry für den großen Essay ich versuche nur, um Details zu geben, wie dies funktionieren soll.Batch-Login-Code
Ich habe an einem Login-Code gearbeitet und ich habe es so gemacht, wenn Sie das .bat ausführen, fragt es, ob Sie sich registrieren oder einloggen wollen. Die Registrierung funktioniert einwandfrei. Es erstellt eine Textdatei mit dem Namen des Benutzers. Wenn Sie also den Benutzernamen "User1" eingeben, wird eine neue Textdatei namens "User1.txt" erstellt. Danach werden Sie aufgefordert, ein Passwort zweimal einzugeben, um sicherzustellen, dass Sie es richtig eingeben. Sobald Sie das Kennwort in beiden Zeiten geben wird es das Passwort innerhalb der „User1.txt“ Datei speichern, so dass jetzt ein Passwort haben innerhalb von „User1.txt“
:Register
set /p User=Enter A Username: %=%
IF EXIST %User%.txt (
call :colorEcho c %User%
call :colorEcho c " Already Exists."
echo.
call :colorEcho c "Please Choose A Different Username."
echo.
goto Register
) ELSE (
set /p Pass=Enter A Password: %=%
set /p RePass=Re-Enter Password: %=%
)
if %RePass%==%Pass% goto RegFinal
if not %RePass%==%Pass%(
call :colorEcho C "Passwords Do Not Match"
echo.
goto Register
)
:RegFinal
echo %Pass%>%User%.txt
echo Welcome %User%
pause
exit
Das Problem im mit ist mit dem Login . Ich habe 2 Benutzer mit der Registerfunktion von oben erstellt. Benutzername-r1 Passwort-p1 und Benutzername-r2 Passwort-p2. Wenn ich mich anmelde, werden Sie nach Ihrem Benutzer und Passwort gefragt. Ich gebe r1 und p1 ein und es geht zum falschen Login-Bildschirm. Ich tippe r1 und p1 erneut und es zeigt den Begrüßungsbildschirm. Auch wenn ich r1 und p1 darin eintippe, springt es zurück zu: login, weil es denkt, dass es der falsche Benutzer/Passwort ist. aber wenn ich an den Eingang gehen, um den Benutzer und das Passwort wieder kann ich entweder Verwendung r2 und p1 oder r2 und lassen Sie das Kennwort leer, und es wird mir in r2 mit p1 lassen und sogar ein leeres Passwort
:Login
set /p User=Enter Your Username: %=%
IF EXIST %User%.txt (
set /p Pass=Enter Your Password: %=%
>nul findstr /c:%Pass% %User%.txt && (
echo Welcome %User%
) || (
echo Incorrect Username or Password
goto Login
)
) ELSE (
call :colorEcho c %User%
call :colorEcho c " Does Not Exists."
echo.
goto Choice
)