中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-06-23 20:57
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » [求助]如何做到输入密码无显示 查看 1,078 回复 14
楼 主 [求助]如何做到输入密码无显示 发表于 2008-04-12 09:01 ·  中国 广东 深圳 宝安区 电信
初级用户
积分 61
发帖 24
注册 2007-08-24 21:03
18年会员
UID 95773
性别 男
状态 离线
看了论坛的贴子,可是还是不会做到输入密码无显示

特来求助高手们再详细解答;

看下面的我想在输入密码123456无显示字符,应高手帮帮忙!

:choi
set choice9=
set /p choice3=请输入密码:
IF NOT "%Choice3%"=="" SET Choice2=%Choice2:~0,1%
if /i "%choice3%"=="123456" goto IP
if /i "%choice3%"=="*" goto 主菜单
if /i "%choice3%"=="**" goto EXIT
echo 密码错误,请重新输入
echo.
goto choi
2 发表于 2008-04-12 09:20 ·  中国 广东 深圳 宝安区 电信
初级用户
积分 61
发帖 24
注册 2007-08-24 21:03
18年会员
UID 95773
性别 男
状态 离线
高手帮帮忙啊,我还在在线等待有人解决
3 发表于 2008-04-12 10:04 ·  中国 湖南 株洲 电信
金牌会员
★★★★
永远的学习者
积分 3,105
发帖 1,276
注册 2008-03-08 13:00
18年会员
UID 112398
性别 男
状态 离线
请楼主参考http://www.cn-dos.net/forum/viewthread.php?tid=29806&fpage=4精典中的代码,并学习学习吧。
批处理之家新域名:www.bathome.net
4 发表于 2008-04-12 13:42 ·  中国 广东 深圳 宝安区 电信
初级用户
积分 61
发帖 24
注册 2007-08-24 21:03
18年会员
UID 95773
性别 男
状态 离线
那位高手还是帮帮我吧,上面的我看不懂啊
5 发表于 2008-04-12 13:52 ·  中国 湖南 株洲 电信
金牌会员
★★★★
永远的学习者
积分 3,105
发帖 1,276
注册 2008-03-08 13:00
18年会员
UID 112398
性别 男
状态 离线
晕,把你上面的这段代码改成如下的就可以了啊:
:choi
set choice9=
echo hP1X500Pf3/f1/5++u5x>in.com
set /p password choice3=请输入密码:<nul
for /f "tokens=*" %%i in ('in.com') do set choice3=%%i
del in.com
IF NOT "%Choice3%"=="" SET Choice2=%Choice2:~0,1%
if /i "%choice3%"=="123456" goto IP
if /i "%choice3%"=="*" goto 主菜单
if /i "%choice3%"=="**" goto EXIT
echo 密码错误,请重新输入
echo.
goto choi


[ Last edited by zw19750516 on 2008-4-12 at 01:55 PM ]
批处理之家新域名:www.bathome.net
6 发表于 2008-04-12 19:10 ·  中国 广东 深圳 宝安区 电信
初级用户
积分 61
发帖 24
注册 2007-08-24 21:03
18年会员
UID 95773
性别 男
状态 离线
楼上的方法还是不行啊,还是在线等待高手解决
7 发表于 2008-04-12 21:10 ·  中国 北京 鹏博士BGP
银牌会员
★★★
积分 2,098
发帖 566
注册 2007-09-11 07:27
18年会员
UID 97070
性别 男
状态 离线

:If "123456"<>CreateObject("ScriptPW.Password").GetPassword() Then WSH.Echo "Wrong" Else WSH.Echo "Right"
'&CLS&@CSCRIPT/NOLOGO /E:VBS %0
8 发表于 2008-04-12 23:57 ·  中国 重庆 电信
版主
★★★★★
积分 9,023
发帖 5,017
注册 2007-05-31 19:39
19年会员
UID 89899
性别 男
状态 离线
Originally posted by fourme2009 at 2008-4-12 01:42 PM:
那位高手还是帮帮我吧,上面的我看不懂啊

一定要看懂吗?据说那段代码能看懂的人不是很多,会用就行了。
9 发表于 2008-04-13 04:35 ·  中国 陕西 西安 电信
银牌会员
★★★★
钻石会员
积分 2,278
发帖 1,020
注册 2007-11-19 13:34
18年会员
UID 103127
性别 男
状态 离线
感觉7楼的代码更实用些,还不生产临时文件,改造下适合推广
山外有山,人外有人;低调做人,努力做事。

进入网盘(各种工具)~~ 空间~~cmd学习
10 发表于 2008-04-13 08:23 ·  中国 广东 深圳 宝安区 电信
初级用户
积分 61
发帖 24
注册 2007-08-24 21:03
18年会员
UID 95773
性别 男
状态 离线
晕啊,我还是不懂怎么用啊..那位高手按照我提示的给我写出来吧!
11 发表于 2008-04-13 10:03 ·  中国 湖南 株洲 电信
金牌会员
★★★★
永远的学习者
积分 3,105
发帖 1,276
注册 2008-03-08 13:00
18年会员
UID 112398
性别 男
状态 离线
  我都测试了我5楼改的那段代码是可以的,不知楼主是不是认真测试了,问问题的精神是好的,求助也是一种快捷的学习方法,但最终自己还是要去多想多尝试,才能从根本上解决问题。再说我认为有些超出自己理解层面的问题暂时不要去深究,先搞个拿来主义用了再说,等以后上升到这一理论层面再来思考。
批处理之家新域名:www.bathome.net
12 发表于 2008-04-13 10:22 ·  中国 广东 深圳 宝安区 电信
初级用户
积分 61
发帖 24
注册 2007-08-24 21:03
18年会员
UID 95773
性别 男
状态 离线
不会吧,你试一下,
进到里面中文还有字符全是乱码...

├▄┬δ┤φ╬≤,╟δ╓╪╨┬╩Σ╚δ

╟δ╩Σ╚δ├▄┬δ:├▄┬δ┤φ╬≤,╟δ╓╪╨┬╩Σ╚δ

╟δ╩Σ╚δ├▄┬δ:├▄┬δ┤φ╬≤,╟δ╓╪╨┬╩Σ╚δ

╟δ╩Σ╚δ├▄┬δ:
13 发表于 2008-04-13 10:32 ·  中国 广东 珠海 电信
初级用户
★★
积分 97
发帖 51
注册 2008-03-19 15:26
18年会员
UID 113404
性别 男
状态 离线
14 发表于 2008-04-13 11:12 ·  中国 湖南 株洲 电信
金牌会员
★★★★
永远的学习者
积分 3,105
发帖 1,276
注册 2008-03-08 13:00
18年会员
UID 112398
性别 男
状态 离线
经测试这段代码确实不支持中文,但还是能实现隐藏密码,请再测试如下代码:
@echo off
:choi
set pwd=1
echo hP1X500Pf3/f1/5++u5x>in.com
cls
set /p pwd=enter password:<nul
for /f "tokens=*" %%i in ('in.com') do set pwd=%%i
del in.com
if "%pwd%"=="123456" goto ip
cls
echo wrong please enter password again
goto choi
:echo
echo
:ip
echo the password is %pwd%,test is successfully.
pause>nul
批处理之家新域名:www.bathome.net
15 发表于 2008-04-13 11:18 ·  中国 广东 深圳 宝安区 电信
初级用户
积分 61
发帖 24
注册 2007-08-24 21:03
18年会员
UID 95773
性别 男
状态 离线
经测试楼上的代码还是不支持中文,谢谢各位了..从你们的帮助中我已经找到了

代码如下:
@echo off
chcp 437>nul&graftabl 936>nul
echo hP1X500P[PZBBBfh#b##fXf-V@`$fPf]f3/f1/5++u5x>in.com
set /p password=请输密码:<nul
for /f "tokens=*" %%i in ('in.com') do set password=%%i
del in.com
echo.
if /i "%password%"=="123456" goto 123456
echo 错误密码:"%password%"
echo 3秒钟后程序自动退出.
ping -n 3 127.0.0.1>nul
exit

:123456
cls
echo 密码正确
pause
论坛跳转: