请求:怎样在VB源程序里创建ODBC数据源??
因为我的数据库是PB的DB数据库,客户安装后不要作任何设置就能连上数据库,答复者,立即给分!!

解决方案 »

  1.   


    http://www.kfnet.cn/artical.jsp?ArticalID=2089&Belong=3&Type=3
      

  2.   

    不用创建数据源,通过ADO,直接用sql anywhere就可以连接到DB,前提是要安装了sql anywhere(可通过安装一次PB,或将sql anywhere在安装程序中一并安装),至于连接串,用个ADO控件创建一下就知道了。
      

  3.   

    直接在代码中操作注册表即可建立ODBC的DSN了
    -----------------------------------------------------------------
    使用者DNS在HKEY_CURRENT_USER\SOFTWARE\ODBC\ODBC.INI里
    系统的DNS在HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI里

    [HKEY_CURRENT_USER\SOFTWARE\ODBC\ODBC.INI\ODBC Data Sources]
    or
    [HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\ODBC Data Sources]我的.reg文件这样的主机ip为3,资料库new,用户XYZ,密码空
    REGEDIT4[HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\allnew]
    "Database"="new" 
    "Driver"="%SystemRoot%\\System32\\SQLSRV32.dll"
    "LastUser"="XYZ"
    "QuotedId"="No"
    "Server"="192.168.0.3"
    [HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\ODBC Data Sources]
    "Allnew"="SQL Server"-----------------------------------------------------------------
    http://www.kaifz.com/VB-DSN-t35138.htm
      

  4.   

    [VB] 動態創建DSN數據源 
    -----------------------------------------------------------------
    Private Const ODBC_ADD_DSN = 1          ' Add data source
    Private Const ODBC_CONFIG_DSN = 2       ' Configure (edit) data source
    Private Const ODBC_REMOVE_DSN = 3       ' Remove data sourcePrivate Declare Function SQLConfigDataSource Lib "ODBCCP32.DLL" _
                    (ByVal hwndParent As Long, _
                    ByVal fRequest As Long, _
                    ByVal lpszDriver As String, _
                    ByVal lpszAttributes As String) _
                    As LongPrivate Sub Form_Load()
        Dim intRet As Long
        
        intRet = SQLConfigDataSource(0&, ODBC_ADD_DSN, _
                            "Microsoft Access Driver (*.mdb)" + Chr$(0), _
                            "DSN=test;" & _
                            "DBQ=C:\Program Files\Microsoft Visual Studio\VB98\NWIND.MDB;" & _
                            "DEFAULTDIR=D:\" + Chr$(0))
            
        If intRet Then
            MsgBox "DSN created successful"
        Else
            MsgBox "DSN created failed"
        End If
    End SubPrivate Sub Form_Unload(Cancel As Integer)
        Dim intRet As Long
        
        intRet = SQLConfigDataSource(0&, ODBC_REMOVE_DSN, _
                            "Microsoft Access Driver (*.mdb)" + Chr$(0), _
                            "DSN=test" + Chr$(0))
        If intRet Then
            MsgBox "DSN deleted successful"
        Else
            MsgBox "DSN deleted failed"
        End If
    End Sub-----------------------------------------------------------------
    以上代码经过测试,没问题! No problem!
      

  5.   

    对的,以上代码创建ACCESS数据源是可以的,但创建PB的DB数据库好象不行,我试了多次?
    哎,我还是没有成功.
    因为我有一个DB数据库文件,前端是用VB开发的.现在怎么样做也不能动态创建数据库.要是ACCESS数据库就没有必要态创建了!
    谁会,给个例子动态创建DB数据库数据源????
      

  6.   

    建立ODBC连接的话我个人认为最简单的方法就是用adodc控件。按向导一步一步做就可搞定了。  不用写一行代码的。
      

  7.   

    直接调用系统的ODBC配置器吧。