程序安装完之后,运行时,判断用户是否已经配置了ODBC数据源。无,则提示安装配置,程序退出。已经配置过了,程序则正常往下运行。
问:如何实现?

解决方案 »

  1.   

    给个思路,在数据库连接执行句前编写ON ERROR GOTO 。。语句
    正常连接则不进入错误处理句
    不正常则进入错误处理语句。
    类似下列代码,你需依据你的要求修改:
    Sub OnErrorStatementDemo()
       On Error GoTo ErrorHandler   ' 打开错误处理程序。
       Open "TESTFILE" For Output As #1   ' 打开输出文件。
       Kill "TESTFILE"   ' 试图删除已打开的文件。
       On Error Goto 0   ' 关闭错误陷阱。
       On Error Resume Next   ' 改变错误陷阱。
       ObjectRef = GetObject("MyWord.Basic")   ' 试图启动不存在
                ' 的对象
    '检查可能发生的 Automation 错误。
       If Err.Number = 440 Or Err.Number = 432 Then
          ' 告诉用户出了什么事。然后清除 Err 对象。
          Msg = "There was an error attempting to open the Automation object!"
          MsgBox Msg, , "Deferred Error Test"
          Err.Clear   ' 清除 Err 对象字段。
       End If   
    Exit Sub      ' 退出程序,以避免进入错误处理程序。
    ErrorHandler:   ' 错误处理程序。
       Select Case Err.Number   ' 检查错误代号。
          Case 55   ' 发生“文件已打开”的错误。
             Close #1   ' 关闭已打开的文件。
          Case Else
             ' 处理其他错误状态 . . . 
       End Select
       Resume   ' 将控制返回到产生错误的语句。
    End Sub
      

  2.   

    Private Sub Form_Load()
        If Not P_Fnc_DBConnect Then
    end subPublic Function P_Fnc_DBConnect() As Boolean
        dim P_Connect  As New ADODB.Connection    
        On Error GoTo ErrHandle    P_Connect.ConnectionString = "Provider=MSDASQL.1;Driver={Microsoft ODBC for oracle};Server=PCCSDB;UID=pccs;Pwd=orapccs;"
    '    P_Connect.ConnectionString = "Provider=MSDASQL.1;Driver={Microsoft ODBC for oracle};Server=PCCSDBtest;UID=pccs1;Pwd=11111;"
        P_Connect.ConnectionTimeout = 30
        P_Connect.CursorLocation = adUseClient
        P_Connect.Open
        P_Fnc_DBConnect = True
        
        Exit Function
        
    ErrHandle:
        MsgBox ERR.Number & ERR.Description & " 请联系……"
        P_Fnc_DBConnect = False
        Exit Function
        
    End Function
      

  3.   

    Private Sub Form_Load()
        On Error GoTo ErrorHandler
        Adodc1.ConnectionString = "Provider=MSDASQL.1;Persist Security Info=False;Data Source=lhxrkgl" 'lhxrkgl为ODBC数据源名称,需改为你实际的名称
        Adodc1.RecordSource = "select * from mdlk_sj"
        Adodc1.Refresh
        DataGrid1.Refresh
        Exit Sub
    ErrorHandler:
        MsgBox "未指定ODBC数据源!请安装ODBC配置,程序将程序退出!"
        End
    End Sub
      

  4.   

    思想就是判断是否能连接上数据库
    能,工作
    不能,联系工程师安装Private Sub Form_Load() 
        If Not P_Fnc_DBConnect Then
             工作
        else
             安装
        end if
     
    end sub Public Function P_Fnc_DBConnect() As Boolean 
        dim P_Connect  As New ADODB.Connection    
        On Error GoTo ErrHandle     P_Connect.ConnectionString = "Provider=MSDASQL.1;Driver={Microsoft ODBC for oracle};Server=PCCSDB;UID=pccs;Pwd=orapccs;" 
    '    P_Connect.ConnectionString = "Provider=MSDASQL.1;Driver={Microsoft ODBC for oracle};Server=PCCSDBtest;UID=pccs1;Pwd=11111;" 
        P_Connect.ConnectionTimeout = 30 
        P_Connect.CursorLocation = adUseClient 
        P_Connect.Open 
        P_Fnc_DBConnect = True 
        
        Exit Function 
        
    ErrHandle: 
        MsgBox ERR.Number & ERR.Description 
        P_Fnc_DBConnect = False 
        Exit Function 
        
    End Function