回 帖 发 新 帖 刷新版面

主题:求写一个简单程序,输密码打开另一个文件

我是VB门外汉,想请坛里朋友写个小程序,程序运行如下:
1、在text1框里输密码,按回车的,对的话,就执行另一个程序(c:\opencd.exe);
2、不对的话,提示密码错误,再按回车,又返回到输密码的这个框里;
3、如果不对,就再循环两次,
4、第三次还不对,就打开c:\mp3(音乐文件,什么音乐格式都行);
5、又反回到密码输入框

凡给出答案的,我将都给30分,谢谢各位。
最好给出源代码和最终程序,可以提供下载的。

回复列表 (共19个回复)

11 楼

谢谢
我试试.
不过,以下是我用批处理命令写的,不太行.(只要求实现核对密码,错误在于密码不对就给退了,郁闷)
@echo off
color 27
echo 请输入密码
set command=
set /p command=COMMAND:

if /i "%COMMAND%"=="123456" goto open
if not /i "%COMMAND%"=="123456" 
echo 密码错误,请重新输入!
goto scr

:open
c:/open.gif
pause

:scr
set command=
set /p command=COMMAND:

if /i "%COMMAND%"=="123456" goto open
if not /i "%COMMAND%"=="123456" 
echo 密码错误,请重新输入!

goto scr

12 楼

批处理的怎么行,用^C就出来了吧

13 楼

呵呵,Ctrl+C,对,是出来了
我只是想知道,为什么程序运行到(if not /i "%COMMAND%"=="123456")这里出了什么问题,怎么直接出退了来了.

14 楼

10楼,你的程序有两个问题:
1、我输入123,它提示密码错误;当我输123,再按一下Del键时,指定的程序运行了。也就是说输入的密码后面有一个后导空格,“123 ”,密码是这样的形式;
2、出现密码错误,我再重新输入时,上次输的密码没有自动清除,这样我必须按回退键才能清除。

我的想法是:给Text1.test=""赋值,上面两个问题就一起解决了,这句代码怎么写、添在什么地方?

还有一个小问题:如果程序有错,我点“调试”,改完了后既不能保存,也不能关闭,我直接用任务管理器关了,老是这样也不是个事啊!

15 楼

[quote]10楼,你的程序有两个问题:
1、我输入123,它提示密码错误;当我输123,再按一下Del键时,指定的程序运行了。也就是说输入的密码后面有一个后导空格,“123 ”,密码是这样的形式;
2、出现密码错误,我再重新输入时,上次输的密码没有自动清除,这样我必须按回退键才能清除。

我的想法是:给Text1.test=""赋值,上面两个问题就一起解决了,这句代码怎么写、添在什么地方?

还有一个小问题:如果程序有错,我点“调试”,改完了后既不能保存,也不能关闭,我直接用任务管理器关了,老是这样也不是个事啊![/quote]

第一个问题我运行了,我这正常,没出现你说的那种情况;
第二个问题很简单,只要在窗体代码的“Text1.SetFocus '回到密码输入框”这句下面加句“Text1.text=""”就OK了;
点了调试之后要关闭运行中的程序才能修改保存,就是先要点上面那框(停止)。

楼主真是VB盲[em18]

16 楼

搞不巧是版本问题!
嗯,我在每段里都试了一下,发现这样才行
Dim i As Integer
Dim s As Integer 's代表可以输入多少次密码后退出

Private Sub Form_Load()
Text1.Text = ""        '在这里加一下,程序一运行先赋值
End Sub

Private Sub Text1_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then Command1_Click
End Sub
Private Sub Command1_Click()
s = 3
If Text1.Text = "123" Then       '“123”为密码
Shell "c:\Rip.exe"   '程序路径
Else
a = MsgBox("密码错误", vbOKOnly + 64, "提示")
Text1.SetFocus '回到密码输入框
Text1.Text = ""                     '密码错了,重新赋值
i = i + 1
If i >= s Then
PlaySound "c:\worning.wav" '声音路径
i = 0 '播放声音后计数复位
End If
End If
End Sub
我用批处理命令写的那个,谁给看一下,为什么密码错误了就退出来了?30分

17 楼

@echo off
color 27
echo 请输入密码

:scr
set command=
set /p command=COMMAND:

if /i "%COMMAND%"=="123456" (
goto open) else (
echo 密码错误
goto scr
)

:open
c:/open.gif
pause

goto scr

18 楼

才人!!!

19 楼

If Text1.Text = "123" And Text2.Text = "123" Then  "123"帐号名字自己取.
Form2.Show
Form1.Hide
Else
MsgBox "密码错误"
End If
End Sub

Private Sub Command2_Click()
End
End Sub

我来回复

您尚未登录,请登录后再回复。点此登录或注册