我在批处理文件中进行登录。你可以登录 它是我的大批量文件项目的一部分...... 但问题是,当我注册并登录它时,我给出了错误,如果有人登录错误,但我知道我的用户名和密码是正确的吗? 任何人都可以编辑我的批处理文件,然后它运行顺利,并解释为什么你做了更改,所以我明白出了什么问题? 这是代码。
@echo off
title LOG IN SCREEN v1.0
color 0a
if EXIST username.uf (
if EXIST password.uf (
goto Login
)) else (goto Reg)
:Reg
cls
echo Welcome to Register!
ping localhost 2 >nul
echo Register to continue
set /p U=Username:
set /p P=Password:
echo %U%>username.uf
echo %P%>password.uf
echo REGISTRATION COMPLETE!
pause
goto Login
:Login
cls
echo Welcome, Please Login to continue
set /p user=Username:
set /p pass=Password:
if %user%==username.uf (
if %pass%==username.uf (
goto welcome
)) else (goto error)
:welcome
cls
echo Welcome to the Test Program!
ping localhost -n 2 >nul
echo Please Exit and come back when you think
echo Program is up!
pause
exit
:error
cls
echo Error. Input Value = Incorrect
echo Error Code = .txt =/ u/p
ping localhost -n 2 >nul
echo Type goback to go back to previous screen
set /p er=
if %er%==goback goto Login
if not %er%==goback goto error
答案 0 :(得分:1)
在你的:登录部分,检查%user%是否与“username.uf”相同,与密码相同
if %user%==username.uf (
if %pass%==username.uf (
goto welcome
)) else (goto error)
将此块替换为:
set /p us=<username.uf
set /p pa=<password.uf
if "%user%"=="%us%" (
if "%pass%"=="%pa%" (
goto welcome
)) else (goto error)
set /p
要求输入,<file.tx
t从文件中获取此请求的输入。
我在if命令中使用了"
,因为如果其中一个变量应为空,它会产生语法错误