⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 frmdbinfo.frm

📁 一个功能强大、程序条理分明的学生学籍管理系统
💻 FRM
字号:
VERSION 5.00
Object = "{C2A990D9-DFD1-4B7C-A432-A1DD219DC55F}#1.0#0"; "UserCtrProj.ocx"
Begin VB.Form frmDBInfo 
   Caption         =   "数据库设置"
   ClientHeight    =   3225
   ClientLeft      =   60
   ClientTop       =   345
   ClientWidth     =   4485
   LinkTopic       =   "Form2"
   MaxButton       =   0   'False
   MinButton       =   0   'False
   ScaleHeight     =   3225
   ScaleWidth      =   4485
   StartUpPosition =   3  'Windows Default
   Begin UserCtrProj.UsrPicBtn cmdCancel 
      Height          =   525
      Left            =   3120
      TabIndex        =   8
      Top             =   2400
      Width           =   1095
      _ExtentX        =   1931
      _ExtentY        =   926
      Picture         =   "frmDBInfo.frx":0000
      Caption         =   "       取消"
      BeginProperty Font {0BE35203-8F91-11CE-9DE3-00AA004BB851} 
         Name            =   "MS Sans Serif"
         Size            =   8.25
         Charset         =   0
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
   End
   Begin UserCtrProj.UsrPicBtn cmdODBC 
      Height          =   525
      Left            =   1560
      TabIndex        =   7
      Top             =   2400
      Width           =   1455
      _ExtentX        =   2566
      _ExtentY        =   926
      Picture         =   "frmDBInfo.frx":0133
      Caption         =   "       系统数据源"
      BeginProperty Font {0BE35203-8F91-11CE-9DE3-00AA004BB851} 
         Name            =   "MS Sans Serif"
         Size            =   8.25
         Charset         =   0
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
   End
   Begin UserCtrProj.UsrPicBtn cmdOk 
      Height          =   525
      Left            =   240
      TabIndex        =   6
      Top             =   2400
      Width           =   1215
      _ExtentX        =   2143
      _ExtentY        =   926
      Picture         =   "frmDBInfo.frx":0225
      Caption         =   "       确定"
      BeginProperty Font {0BE35203-8F91-11CE-9DE3-00AA004BB851} 
         Name            =   "MS Sans Serif"
         Size            =   8.25
         Charset         =   0
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
   End
   Begin UserCtrProj.UsrCtrText txtPsw 
      Height          =   375
      Left            =   2040
      TabIndex        =   5
      Top             =   1680
      Width           =   2055
      _ExtentX        =   3625
      _ExtentY        =   661
      BeginProperty Font {0BE35203-8F91-11CE-9DE3-00AA004BB851} 
         Name            =   "MS Sans Serif"
         Size            =   8.25
         Charset         =   0
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      PasswordChar    =   "*"
      FontSize        =   8.25
      FontName        =   "MS Sans Serif"
   End
   Begin UserCtrProj.UsrCtrText txtUser 
      Height          =   375
      Left            =   2040
      TabIndex        =   4
      Top             =   960
      Width           =   2055
      _ExtentX        =   3625
      _ExtentY        =   661
      BeginProperty Font {0BE35203-8F91-11CE-9DE3-00AA004BB851} 
         Name            =   "MS Sans Serif"
         Size            =   8.25
         Charset         =   0
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      FontSize        =   8.25
      FontName        =   "MS Sans Serif"
   End
   Begin UserCtrProj.UsrCtrCombo cboODBC 
      Height          =   375
      Left            =   2040
      TabIndex        =   3
      Top             =   360
      Width           =   2055
      _ExtentX        =   3625
      _ExtentY        =   661
      BeginProperty Font {0BE35203-8F91-11CE-9DE3-00AA004BB851} 
         Name            =   "MS Sans Serif"
         Size            =   8.25
         Charset         =   0
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      ScaleWidth      =   2055
      ScaleMode       =   0
      ScaleHeight     =   375
      ListIndex       =   -1
      FontSize        =   8.25
      FontName        =   "MS Sans Serif"
   End
   Begin VB.Label lblPsw 
      Caption         =   "数据库密码:"
      Height          =   375
      Left            =   360
      TabIndex        =   2
      Top             =   1680
      Width           =   1455
   End
   Begin VB.Label lblUser 
      Caption         =   "数据库用户名:"
      Height          =   375
      Left            =   360
      TabIndex        =   1
      Top             =   960
      Width           =   1575
   End
   Begin VB.Label lblODBC 
      Caption         =   "ODBC别名:"
      Height          =   255
      Left            =   360
      TabIndex        =   0
      Top             =   360
      Width           =   1455
   End
End
Attribute VB_Name = "frmDBInfo"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Option Explicit
        
'该变量用来判断打开注册表是否成功
Dim lFlag As Long
'以下三个变量用来存储列表框以及两个文本框的对应文本内容
'用来向记录数据库设置信息的三个全局变量传递信息
'如果不是第一次运行程序,那么这三个全局变量的来源将来自
'读取注册表所获得的信息
'这三个全局变量在链接数据库的函数中起着重要的作用
Dim odbcAlias As String
Dim dbUser As String
Dim dbPsw As String

Private Sub cmdCancel_Click()
    Unload Me
End Sub

Private Sub cmdODBC_Click()
    '该函数在第二章有过讲述
    Shell ("RunDLL32.exe Shell32.dll,Control_RunDLL ODBCCP32.CPL")
End Sub

Private Sub cmdOk_Click()
    Dim rsLoad As ADODB.Recordset
    
    odbcAlias = Trim$(cboODBC.Text)
    dbUser = Trim$(txtUser.Text)
    dbPsw = Trim$(txtPsw.Text)
    
    '不能在数据库配置信息处输入空值
    '由于数据库允许空密码,因此密码输入框允许是空
    If odbcAlias = vbNullString Or dbUser = vbNullString Then
        MsgBox "ODBC别名和用户名不能为空!"
        cboODBC.SetFocus
        Exit Sub
    End If
    
    '将数据库配置信息赋给记录这些信息的三个全局变量
    '以备链接数据库之用
    mOdbcAlias = odbcAlias
    mDbUser = dbUser
    mDbPsw = dbPsw
    
    '数据库连接测试代码
    Set gcnnConnection = New Connection
    blnConnected = gADOConnection(gcnnConnection)
    If (blnConnected = True) Then
        '连接通过,将数据库连接信息写入注册表
        lFlag = CreateKey(HKEY_CURRENT_USER, REGSUBKEY)
        
        '调用封装好的注册表函数将信息写入注册表
        Call SetValue(HKEY_CURRENT_USER, REGSUBKEY, "ODBCAlias", _
            REG_SZ, odbcAlias)
        Call SetValue(HKEY_CURRENT_USER, REGSUBKEY, "User", _
            REG_SZ, dbUser)
        Call SetValue(HKEY_CURRENT_USER, REGSUBKEY, "Password", _
            REG_SZ, dbPsw)
            
        '启动系统登录窗体
        Load frmPsw
        frmPsw.Show
    Else
        MsgBox "数据库连接失败!"
        Exit Sub
    End If
    
    '如果输入信息正确登录到数据库上,则可以直接退出该窗体
    '否则,提示数据链接失败之后,将不能退出窗体
    '除非按取消按钮放弃登录数据库
    Unload Me
End Sub

Private Sub Form_Load()
    Dim i As Long
    Dim values() As Variant
    
    '利用这条语句用来将窗体定位在屏幕的中间部分
    Move (Screen.Width - Me.Width) / 2, _
        (Screen.Height - Me.Height) / 2
   
    '枚举注册表中的键值,获得已经注册的ODBC的名称,添加到列表中
    '这一段枚举的API函数在第二章已经有所讲述
    values() = EnumValues(HKEY_LOCAL_MACHINE, _
            "SOFTWARE\ODBC\ODBC.INI\ODBC Data Sources")
    
    cboODBC.Clear
    '对多位数组用LBound和UBound的方法
    For i = LBound(values, 2) To UBound(values, 2)
        cboODBC.AddItem values(0, i)
    Next
End Sub

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -