做了小程序,注册时用数据文件记录注册信息(2项,用户名跟密码),登陆时读文件取记录跟用户的输入做判断,结果每次都失败,原因在哪?Module1: Public Type UserInfo
Nam As String * 20
Pwd As String * 20
End TypePublic Function Login(ByVal strUserNam As String, ByVal strUserPwd As String) As Boolean
Dim intFnum, intLast, i As Integer
Dim User As UserInfo
intFnum = FreeFile
Open "apppath & xx.dat" For Random As intFnum Len = Len(User)
intLast = LOF(intFnum) / Len(User)
For i = 1 To intLast
Get #intFnum, i, User
If User.Nam = strUserNam And User.Pwd = strUserPwd Then
Login = True
Exit For '不考虑用户名重复
End If
Next i
Close #intFnum
End FunctionfrmLogin: '登陆窗口代码Private Sub cmdRegist_Click()
Me.Hide
frmRegist.Show
End SubPrivate Sub cmdLogin_Click()
If Login(Trim(txtName.Text), Trim(txtPassword.Text)) = True Then
MsgBox "登陆成功!"
Else
MsgBox "登陆失败!"
End If
End Sub
Nam As String * 20
Pwd As String * 20
End TypePublic Function Login(ByVal strUserNam As String, ByVal strUserPwd As String) As Boolean
Dim intFnum, intLast, i As Integer
Dim User As UserInfo
intFnum = FreeFile
Open "apppath & xx.dat" For Random As intFnum Len = Len(User)
intLast = LOF(intFnum) / Len(User)
For i = 1 To intLast
Get #intFnum, i, User
If User.Nam = strUserNam And User.Pwd = strUserPwd Then
Login = True
Exit For '不考虑用户名重复
End If
Next i
Close #intFnum
End FunctionfrmLogin: '登陆窗口代码Private Sub cmdRegist_Click()
Me.Hide
frmRegist.Show
End SubPrivate Sub cmdLogin_Click()
If Login(Trim(txtName.Text), Trim(txtPassword.Text)) = True Then
MsgBox "登陆成功!"
Else
MsgBox "登陆失败!"
End If
End Sub
解决方案 »
- 请问用VB怎么做右下角自动提示窗口?
- 使用水晶报表时,如果根据分组字段分页打印?
- (紧急)做的第一个VB程序,求各位帮帮忙呀!!!
- 请教一个简单问题?
- DataReport 中如何標簽打印
- 那位前辈能推荐一本适合我们初学者的书!
- 问一个关于progressbar 进度条的问题
- 紧急求助!绝对送分
- 请问怎样调用一个窗体结束后,此窗体向调用者返回一个结果值就像msgbox窗体一样,返回一个VbYes或VbNo之类的数值
- WAP的網站怎麽訪問?http://wap.tencent.com (因爲把VB區當成自己家了,所以,請兄弟姐妹們幫助解決)
- dos下用basic写的bas文件,我用vb6怎么打开都是乱码呢?
- 字符串的连缀和动态数组重定义大小再赋值哪个快?
frmRegist: '注册窗口代码
Private Sub cmdReturn_Click()
frmLogin.Show
Unload Me
End SubPrivate Sub cmdRegist_Click()
Dim intFnum, intLast As Integer
Dim User As UserInfo
User.Nam = Trim(txtUserNam.Text)
User.Pwd = Trim(txtUserPwd.Text)
intFnum = FreeFile
Open "apppath & xx.dat" For Random As intFnum Len = Len(User)
intLast = LOF(intFnum) / Len(User)
intLast = intLast + 1
Put #intFnum, intLast, User
Close #intFnum
MsgBox "注册成功!" & vbCrLf & "您的用户名为:" & User.Nam _
& vbCrLf & "您的密码为:" & User.Pwd
txtUserNam.Text = ""
txtUserPwd.Text = ""
End Sub