RT

解决方案 »

  1.   

    在INI文件里存储动态的东西,像数据库文件/数据服务器啦,用户/密码,默认数据库,等等
    固定不变的如驱动引擎,格式化字串可以写在代码里
      

  2.   

    dim Cn As New ADODB.Connection
    dim cnStr as string
    dim Para as String
    GetPrivateProfileString "DB","FileName",vbNullString,Para,2500,"db.ini"
    Para=left(Para,inStr(Para,vbNullString)-1)
    cnStr="Provider=VFPOLEDB.1;Data Source=" & Para
    Cn.Open cnStr
    简单来说,就是这样了
      

  3.   

    下面是连接SQL SERVER数据库的,你参考下
    'Option Explicit 
    '保存执行SQL语句的字符串 
    Public sqlstmt As String 
    '声明写入INI文件的API函数 
    Public Declare Function WritePrivateProfileString Lib "kernel32" Alias "WritePrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As Any, ByVal lpString As Any, ByVal lpFileName As String) As Long 
    Public Declare Function WritePrivateProfileSection Lib "kernel32" Alias "WritePrivateProfileSectionA" (ByVal lpAppName As String, ByVal lpString As String, ByVal lpFileName As String) As Long 
    '定义服务器参数常量 
    Public server As String 
    Public user As String 
    Public password As String '声明类模块变量 
    Public mydb As New clsdb 
    Public mybusinessman As New Clsbusinessman 
    Public mycustomer As New Clscustomer 
    Public mydeliver As New Clsdeliver 
    Public mybusiness As New Clsbusiness 
    '程序进入点 
    Sub main() 
    '从setup.ini中读取服务器信息 
        server = getkey(App.Path + "\setup.ini", "server") 
        user = getkey(App.Path + "\setup.ini", "user") 
        password = getkey(App.Path + "\setup.ini", "password") '如果读取不成功,退出 
    If server = "" Then 
        MsgBox "setup.ini格式不正确,请重新设置" 
        End 
    End If ''设置数据环境器参数 
    'DataEnvironmentclient.Client.ConnectionString = "driver={sql server};server=" + Trim(server) + ";uid=" + Trim(user) + ";pwd=" + Trim(password) + ";database=erp1" '显示主窗体 
    Frmmanclient.Show 
    End Sub Function fileexist(fname As String) As Boolean 
    '判断INI文件是否存在 
    On Local Error Resume Next 
        fileexist = (Dir(fname)  <> "") 
    End Function 
    Public Function getkey(tmp_file As String, tmp_key As String) As String 
    Dim file As Long 
    '分配文件句柄 
    file = FreeFile 
    '如果文件不存在则创建一个默认的SETUP.INI文件 
    If fileexist(tmp_file) = False Then 
        getkey = "" 
        Call WritePrivateProfileString("setup information", "server", "", App.Path + "\setup.ini") 
        Call WritePrivateProfileString("setup information", "username", "", App.Path + "\setup.ini") 
        Call WritePrivateProfileString("setup information", "password", "", App.Path + "\setup.ini") 
        Exit Function 
    End If 
    '读取数据项值 
    Open tmp_file For Input As file 
    Do While Not EOF(1) 
        Line Input #file, buffer 
        If Left(buffer, Len(tmp_key)) = tmp_key Then 
            pos = InStr(buffer, "=") 
            getkey = Trim(Mid(buffer, pos + 1)) 
        End If 
    Loop 
    Close file 
    End Function