中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » [求助]难道"论坛"没有人能解决这个问题..
« [1] [2] »
作者:
标题: [求助]难道"论坛"没有人能解决这个问题.. 上一主题 | 下一主题
Shinaterry
初级用户





积分 97
发帖 51
注册 2008-3-19
状态 离线
『楼 主』:  [求助]难道"论坛"没有人能解决这个问题..

出处:

批处理输入密码但不显示字符的代码

环境:

Microsoft Windows XP Professional Service Pack 2.0
--
Windows Registry Editor (Regedit) 5.1

目的: 锁定DOS, 密码进入(*轻保护)..

首先, 新建批处理(D:\login.bat) 内容如下:
@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.

echo The Password is:"%password%"

pause
此时, 直接双击运行login.bat, 成功实现密码输入隐藏、显示中文等等(一切正常)

但是, 一旦设置注册表[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Command Processor].AutoRun="D:\login.bat"之后..

运行: cmd

马上挂了 (原因: 估计是因为32位程序与16位程序之间不断互相切换, 直至死机..)

莱鸟求救, 请问大虾如何解决?

不胜感激..

[ Last edited by Shinaterry on 2008-4-15 at 12:27 AM ]

2008-3-27 13:09
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
slore
铂金会员





积分 5212
发帖 2478
注册 2007-2-8
状态 离线
『第 2 楼』:  

貌似直接双击 直接输出 密码是 ""
没有输入的机会?

2008-3-28 00:02
查看资料  发短消息 网志   编辑帖子  回复  引用回复
Shinaterry
初级用户





积分 97
发帖 51
注册 2008-3-19
状态 离线
『第 3 楼』:  

你双击运行后, 直接输入然后回车就可以看见了..

2008-3-28 00:32
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
slore
铂金会员





积分 5212
发帖 2478
注册 2007-2-8
状态 离线
『第 4 楼』:  

我直接双击。。。直接到PAUSE了……没有输入的机会。。。

2008-3-28 00:35
查看资料  发短消息 网志   编辑帖子  回复  引用回复
Shinaterry
初级用户





积分 97
发帖 51
注册 2008-3-19
状态 离线
『第 5 楼』:  

不会吧! 怎么我这边就正常?

2008-3-28 11:30
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
Shinaterry
初级用户





积分 97
发帖 51
注册 2008-3-19
状态 离线
『第 6 楼』:  

@slore

请教两个问题:

1. set /p 可以接收按下"回车"前键盘输入的一系列字符, 请问有没有办法实现在不按"回车"的情况下只能接收单个字符?

2. 如何限定只能输入半角字符(A-Za-z0-9..)?

2008-3-28 22:30
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
slore
铂金会员





积分 5212
发帖 2478
注册 2007-2-8
状态 离线
『第 7 楼』:  

1.
choice命令。。。XP下默认没有(好像2K有),可以从网上下载。

2.
自己对输入后的数据做个检测吧。
不满足抛出错误提示,然后 goto到输入前,重新输入……

2008-3-28 22:41
查看资料  发短消息 网志   编辑帖子  回复  引用回复
Shinaterry
初级用户





积分 97
发帖 51
注册 2008-3-19
状态 离线
『第 8 楼』:  



  Quote:
Originally posted by slore at 2008-3-28 10:41 PM:
自己对输入后的数据做个检测吧。

如何取字符的ASCII编码? (用于判断)

2008-3-29 01:07
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
abcd
银牌会员





积分 1436
发帖 739
注册 2007-10-11
状态 离线
『第 9 楼』:  

试试findstr里的简单正则吧

2008-3-29 04:45
查看资料  发短消息 网志  OICQ (470237592)  编辑帖子  回复  引用回复
Shinaterry
初级用户





积分 97
发帖 51
注册 2008-3-19
状态 离线
『第 10 楼』:  

请问choice命令能不能接收"回车"与"退格"?

2008-3-30 16:24
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
abcd
银牌会员





积分 1436
发帖 739
注册 2007-10-11
状态 离线
『第 11 楼』:  

建议楼主还是用汇编写一段吧,

用16h号中断的1h号输入,判断,再用10h号中断的0eh号输出。

2008-3-31 13:28
查看资料  发短消息 网志  OICQ (470237592)  编辑帖子  回复  引用回复
Shinaterry
初级用户





积分 97
发帖 51
注册 2008-3-19
状态 离线
『第 12 楼』:  

http://yinhaolong.blog.163.com/blog/static/482945920081246281397/

2008-3-31 14:15
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
Shinaterry
初级用户





积分 97
发帖 51
注册 2008-3-19
状态 离线
『第 13 楼』:  

re: abcd -> 谢谢..

[ Last edited by Shinaterry on 2008-4-3 at 11:50 AM ]

2008-3-31 14:16
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
Shinaterry
初级用户





积分 97
发帖 51
注册 2008-3-19
状态 离线
『第 14 楼』:  

UP

2008-4-3 23:49
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
Shinaterry
初级用户





积分 97
发帖 51
注册 2008-3-19
状态 离线
『第 15 楼』:  

UP 大家帮帮忙测试一下嘛..

2008-4-4 15:07
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
« [1] [2] »
请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: