用BAT脚本访问网络共享怎样判断用户输入的账户密码成功或失败?
@echooffcolor3ftitle服务器共享登陆脚本setuser=setpd=set/puser=请输入您的帐号:set/ppd=请输入您的密码:echo登陆中,...
@echo off
color 3f
title 服务器共享登陆脚本
set user=
set pd=
set /p user=请输入您的帐号:
set /p pd=请输入您的密码:
echo 登陆中,请稍候...
net use \\server\share %pd% /user:%user%
echo 登陆成功,任意键打开个人目录....
pause>NUL
start “\\server\share\%user%”
exit
---------------------
如上,现想加入可以判断的功能,当登陆成功继续执行下一步命令,不成功时用ECHO显示登陆失败并转到(GOTO)重新输用户名密码的那一步。谢谢。 展开
color 3f
title 服务器共享登陆脚本
set user=
set pd=
set /p user=请输入您的帐号:
set /p pd=请输入您的密码:
echo 登陆中,请稍候...
net use \\server\share %pd% /user:%user%
echo 登陆成功,任意键打开个人目录....
pause>NUL
start “\\server\share\%user%”
exit
---------------------
如上,现想加入可以判断的功能,当登陆成功继续执行下一步命令,不成功时用ECHO显示登陆失败并转到(GOTO)重新输用户名密码的那一步。谢谢。 展开
2个回答
展开全部
使用返回值%errorlevel%即可判断,如果成功%errorlevel%=0,反之就失败。
使用举例:
@echo off
color 3f
title 服务器共享登陆脚本
:start
cls
set user=
set pd=
set /p user=请输入您的帐号:
set /p pd=请输入您的密码:
echo 登陆中,请稍候...
net use \\server\share %pd% /user:%user%
if "%errorlevel%"==0 goto goon
if "%errorlevel%"==2 echo 登陆失败,任意键重新登陆...&pause>nul & goto start
goto start
:goon
echo 登陆成功,任意键打开个人目录....
pause>NUL
start “\\server\share\%user%”
exit
使用举例:
@echo off
color 3f
title 服务器共享登陆脚本
:start
cls
set user=
set pd=
set /p user=请输入您的帐号:
set /p pd=请输入您的密码:
echo 登陆中,请稍候...
net use \\server\share %pd% /user:%user%
if "%errorlevel%"==0 goto goon
if "%errorlevel%"==2 echo 登陆失败,任意键重新登陆...&pause>nul & goto start
goto start
:goon
echo 登陆成功,任意键打开个人目录....
pause>NUL
start “\\server\share\%user%”
exit
追问
好像不行耶,用你上面的来测试无论登陆失败或成功都会跳转到GOON这步显示登陆成功,我也看了,账号密码验证失败的错误返回码确实是2,成功的返回码是0,照理应该是可以的,但我怎么测试都是跳转到GOON了。。。
追答
呵呵,其实猜到了,我在公司也做了一个类似的批处理,一样的有Bug,怎么弄都不行的,那个返回值判断不起作用,很纳闷。
个人建议你采用更灵活的方法,我现在就是使用了这个办法:
直接使用 net use \\server 或者
set user=
set /p user=请输入用户名:
net use \\server /user:%user%
=================
net use \\server执行后将会出现:
\\server使用者密码不符合什么什么。。。
请输入\\server的用户名:
请输入\\server的密码:
而且这里输入的密码是加密的,不会回显,个人密码更安全。
参考资料: http://zhidao.baidu.com/question/418574446.html
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询