输入用户名和密码登陆的框的再次提问

wphoto2003 2009-05-06 11:26:57
那个这次我重建了一个数据库和表那个程序这样写通过了

Public DataPath As String
Public DataConnectString As String

Private Sub Form_Load()

DataPath = App.Path + "\db2.mdb"
DataConnectString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + DataPath + ";Persist Security Info=False" + ";Jet OLEDB:Database Password="

Adodc1.ConnectionString = DataConnectString

End Sub

Private Sub Command1_Click()
On Error Resume Next
Dim MPassword As String

Adodc1.RecordSource = "select * from wht where name='" & Text1.Text & "'"
Adodc1.Refresh
If Adodc1.Recordset.RecordCount > 0 Then
MPassword = Adodc1.Recordset.Fields("password")
If Text1.Text = MPassword Then



Form2.Show

Unload Me
Else
MsgBox "密码不正确,请您确认后重新输入", , "界面管理登陆"
Text2.Text = ""
Text2.SetFocus
End If
Else
MsgBox "对不起 没有此用户的信息", , "界面管理登陆"
Text1.Text = ""
Text2.Text = ""
End If

End Sub


运行没有问题

但是我像把那个前面的那个加载数据库的那个写在Module1.bas上 能够被这个工程的所有form调用 怎么就不行了呢
...全文
63 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
wphoto2003 2009-05-07
  • 打赏
  • 举报
回复
谢谢 解决了 就是那个2楼说的那个问题 多谢帮助
wphoto2003 2009-05-06
  • 打赏
  • 举报
回复
Module1.bas中的代码:

Public DataPath As String
Public DataConnectString As String
Public Sub Main()
DataPath = App.Path + "\db2.mdb"
DataConnectString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + DataPath + ";Persist Security Info=False" + ";Jet OLEDB:Database Password=prowind"
adoCon.Open (DataConnectString)
Form1.Show
End Sub

那个form1是个登陆窗口
代码如下

Private Sub Command1_Click()
On Error Resume Next
Dim MPassword As String
Adodc1.ConnectionString = DataConnectString
Adodc1.RecordSource = "select * from wht where name='" & Text1.Text & "'"
Adodc1.Refresh
If Adodc1.Recordset.RecordCount > 0 Then
MPassword = Adodc1.Recordset.Fields("password")
If Text1.Text = MPassword Then



Form2.Show

Unload Me
Else
MsgBox "密码不正确,请您确认后重新输入", , "界面管理登陆"
Text2.Text = ""
Text2.SetFocus
End If
Else
MsgBox "对不起 没有此用户的信息", , "界面管理登陆"
Text1.Text = ""
Text2.Text = ""
End If

End Sub


怎么这样改写后 运行 出现那个 未发现数据库名称并且没制定默认的驱动程序

请问这个如何改写啊 谢谢
舉杯邀明月 2009-05-06
  • 打赏
  • 举报
回复
1. 你的 Adodc1 没看到在哪声明的?

2. 你的程序应该从 Sub Main() 入口。你在设计模式时,按一下 F8 ,看调试器给你定位在 Private Sub Form_Load() 内,还是在 Public Sub Main()。 如果不是在 Public Sub Main(),你要从工程属性中选择启动窗口为 Sub Main 。
ouxianzhi520 2009-05-06
  • 打赏
  • 举报
回复
所以模块中的代码并没有执行。从而产生了你的这个错误
ouxianzhi520 2009-05-06
  • 打赏
  • 举报
回复
错误原因可能是由于你的启动对像不是sub main() ,而是form1窗体。你检查看是不是这个出错了。

7,763

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧