能通过access数据库对用户名和密码进行判断,正确则进入主系统页面(main.vb),错误则不能进入。
数据库名为 ob.mdb
窗体按钮有两个:一个是ok ,一个是cancel
名位大侠,有谁会的请出来帮下忙啊,网上找的全是用VB 6.0 和sql后台的,找了好久都没找到!!
能通过access数据库对用户名和密码进行判断,正确则进入主系统页面(main.vb),错误则不能进入。
数据库名为 ob.mdb
窗体按钮有两个:一个是ok ,一个是cancel
名位大侠,有谁会的请出来帮下忙啊,网上找的全是用VB 6.0 和sql后台的,找了好久都没找到!!
建个模块,
Dim varcnn As OleDb.OleDbConnection
ReadOnly Property cnn() As OleDb.OleDbConnection
Get
If varcnn Is Nothing OrElse varcnn.State <> ConnectionState.Open Then
Dim cnstr As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=""" & My.Application.Info.DirectoryPath & "\Contact.mdb"";Persist Security Info=True"
varcnn = New OleDbConnection(cnstr)
varcnn.Open()
End If
Return varcnn
End Get
登录窗体,新建一个就行了。
代码
Public Class LoginForm1
Private Sub OK_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles OK.Click
Using cmd As New OleDb.OleDbCommand("select password from tbuser where userid =?", cnn)
cmd.Parameters.Add("?", OleDbType.VarChar).Value = Me.UsernameTextBox.Text
Dim obj As Object = cmd.ExecuteScalar
If (Not IsDBNull(obj)) AndAlso (obj IsNot Nothing) AndAlso obj = PasswordTextBox.Text Then
Me.DialogResult = Windows.Forms.DialogResult.OK
Else
MessageBox.Show("密码不正确!")
Return
End If
End Using
Me.Close()
End Sub
Private Sub Cancel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Cancel.Click
Me.DialogResult = Windows.Forms.DialogResult.Cancel
Me.Close()
End Sub
End Class
项目属性里点查看应用程序事件,写代码
Namespace My
' 以下事件可用于 MyApplication:
'
' Startup: 应用程序启动时在创建启动窗体之前引发。
' Shutdown: 在关闭所有应用程序窗体后引发。如果应用程序异常终止,则不会引发此事件。
' UnhandledException: 在应用程序遇到未处理的异常时引发。
' StartupNextInstance: 在启动单实例应用程序且应用程序已处于活动状态时引发。
' NetworkAvailabilityChanged: 在连接或断开网络连接时引发。
Partial Friend Class MyApplication
Private Sub MyApplication_Startup(ByVal sender As Object, ByVal e As Microsoft.VisualBasic.ApplicationServices.StartupEventArgs) Handles Me.Startup
Dim f As New LoginForm1
If Not f.ShowDialog = DialogResult.OK Then
End
End If
End Sub
End Class
End Namespace
你测试一下吧。
在窗口 Public Class 之前插入
Imports System.Data Imports System.Data.OleDb
必须先引用命名空间。