问题描述
ImportsSystem.DataImportsSystem.Data.OleDbPublicClassfrmloginPrivateSubbtnok_Click(ByValsenderAsObject,ByValeAsSystem.EventArgs)Handlesbtnok.ClickIfUserAndPwdcheck()ThenDimconndbstr,selectcmd,limitflagAsStringIfRadioBtnSuper.Checked=TrueThenlimitflag=RadioBtnSuper.TextEndIfIfRadioBtnSystem.Checked=TrueThenlimitflag=RadioBtnSystem.TextEndIfIfRadioBtnDo.Checked=TrueThenlimitflag=RadioBtnDo.TextEndIf'selectcmd="select*fromlogin_dbwhereusername='"&txtusername.Text&"'andpassword='"&txtuserpwd.Text&"'"selectcmd="select*fromlogindbwhere用户='"&txtusername.Text&"'And密码='"&txtuserpwd.Text&"'"conndbstr="provider=microsoft.jet.oleDb.4.0;datasource="&CurDir()&"lxbch.mdb;"'"&Application.StartupPath&"lxbch.mdb;"conndbstr=conndbstr&"jetoleDb:databasepassword=9765"TryDimconnAsOleDbConnectionDimcmdAsOleDbCommandDimmyreaderAsOleDbDataReader'*******************conn=NewOleDbConnection(conndbstr)conn.Open()'*******************cmd=NewOleDbCommand(selectcmd,conn)'cmd.CommandType=CommandType.Text'*******************myreader=cmd.ExecuteReader()'While'*********待写代码********Ifmyreader.Item("用户")=txtusername.TextAndmyreader.Item("密码")=txtuserpwd.TextThen'myreader.Read()Andmyreader.Item("flag")=limitflagThenfrmmainshow()Me.Close()Else'.....MsgBox("请检查密码和用户名及其权限,重新输入。",MsgBoxStyle.OkOnly+MsgBoxStyle.Critical,"登录失败")EndIf'EndWhileconn.Close()myreader.Close()myreader.Dispose()Catche1AsExceptionMessageBox.Show(e1.Message)EndTryEndIfEndSubPublicFunctionUserAndPwdcheck()AsBooleanIftxtusername.Text=""Andtxtuserpwd.Text=""ThenErrorProvider1.SetError(txtusername,"没有输入账号")ErrorProvider2.SetError(txtuserpwd,"没有输入密码")MessageBox.Show("没有输入[账号]和[密码]","输入检查",MessageBoxButtons.OK,MessageBoxIcon.Warning,MessageBoxDefaultButton.Button1,MessageBoxOptions.RightAlign)ExitFunctionEndIfIftxtusername.Text=""ThenErrorProvider1.SetError(txtusername,"没有输入账号")ErrorProvider2.SetError(txtuserpwd,"")MessageBox.Show("没有输入[账号]","输入检查",MessageBoxButtons.OK,MessageBoxIcon.Warning,MessageBoxDefaultButton.Button1,MessageBoxOptions.RightAlign)ExitFunctionEndIfIftxtuserpwd.Text=""ThenErrorProvider1.SetError(txtusername,"")ErrorProvider2.SetError(txtuserpwd,"没有输入密码")MessageBox.Show("没有输入[密码]","输入检查",MessageBoxButtons.OK,MessageBoxIcon.Warning,MessageBoxDefaultButton.Button1,MessageBoxOptions.RightAlign)ExitFunctionEndIfIfRadioBtnSuper.Checked=FalseAndRadioBtnSystem.Checked=FalseAndRadioBtnDo.Checked=FalseThenEndIfIftxtusername.Text<>""Andtxtuserpwd.Text<>""AndRadioBtnSuper.Checked=FalseAndRadioBtnSystem.Checked=FalseAndRadioBtnDo.Checked=FalseThenMsgBox("请检查密码和用户名及其权限1,重新输入。",MsgBoxStyle.OkOnly+MsgBoxStyle.Critical,"登录失败")ElseIftxtusername.Text<>""Andtxtuserpwd.Text<>""ThenErrorProvider1.SetError(txtusername,"")ErrorProvider2.SetError(txtuserpwd,"")UserAndPwdcheck=TrueEndIfEndFunctionPublicSubfrmmainshow()DimmainfrmAsNewfrmmainmainfrm.ShowDialog(Me)EndSubPrivateSubtxtuserpwd_TextChanged(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)Handlestxtuserpwd.TextChangedEndSubEndClass
解决方案
解决方案二:
哪行代码标注下。
解决方案三:
改成这样试下Ifmyread.ReadThenmyread.Close()frmmainshow()Me.Close()Else'.....MsgBox("请检查密码和用户名及其权限,重新输入。",MsgBoxStyle.OkOnly+MsgBoxStyle.Critical,"登录失败")EndIf
解决方案四:
myreader=cmd.ExecuteReader()myreader.Read()*****************************************************************************欢迎使用CSDN论坛专用阅读器:CSDNReader(附全部源代码)http://feiyun0112.cnblogs.com/
解决方案五:
按楼上两位说的改过之后还是不行。就是读不出数据来。。。。郁闷