在應(yīng)用程序結(jié)束時,使用 MakeADPConnectionless 清除ADP連接,在程序啟動就不會再出現(xiàn)提示連接的對話框,使用 CurrentProject.IsConnected 判定 ADP 是否連接,如果未連接,使用 sCreateConnection 創(chuàng)建新的連接字符串,使用 CurrentProject.OpenConnection 連接。
作者:大熊
Sub MakeADPConnectionless() Application.CurrentProject.CloseConnection '關(guān)閉連接 Application.CurrentProject.OpenConnection '將連接設(shè)置為無 End Sub |
附:在ADP項目中創(chuàng)建ADP的數(shù)據(jù)庫的默認(rèn)連接的代碼
Public Function sCreateConnection(sSvrName As String, sUID As String, sPWD As String, sDatabase As String) As String '******************************************************************** '該函數(shù)在ADP中檢查連接,如果沒有,它將通過輸入?yún)?shù)創(chuàng)建一個連接 ' '輸入: ' sSvrName 數(shù)據(jù)庫服務(wù)器名 ' sUID 用戶名 ' sPWD 口令 ' sDatabase MSDE數(shù)據(jù)庫名 ' '輸出: ' 連接狀態(tài) ' '********************************************************************
On Error GoTo sCreateConnectionTrap: If Application.CurrentProject.BaseConnectionString = "" Then '表示 ADP 處于無連接狀態(tài) sConnectionString = "PROVIDER=SQLOLEDB.1; " & _ "PASSWORD=" & sPWD & ";" & _ "PERSIST SECURITY INFO=TRUE; USER ID=" & sUID & "; " & _ "INITIAL CATALOG=" & sDatabase & ";" & _ "DATA SOURCE=" & sSvrName Application.CurrentProject.OpenConnection sConnectionString sCreateConnection = "創(chuàng)建了到 " & sDatabase & " 數(shù)據(jù)庫的連接!" Else '連接已存在 sCreateConnection = "已經(jīng)存在到 " & sDatabase & " 數(shù)據(jù)庫的連接!" End If sCreateConnectionExit: Exit Function
sCreateConnectionTrap: sCreateConnection = Err.Description Resume sCreateConnectionExit
End Function
|