请教啊!以下程序在vb封装时,运行正常。但是用的是绝对路径,我应该怎么改成相对路径?
程序如下:  Dim Coon   As Connection
  Dim Rs     As Recordset
  Set Conn = New Connection
    With Conn
      .ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\aaa\bbb.mdb"
      .Open
    End WithSet Rs = New Recordset
sql = "Select top 4 * From NewsData where D_CataID='A00030004' and D_Picture<>'' ORDER BY D_id desc"
Rs.Open sql, Conn, 1, 1
接下来是正确的asp语句了

解决方案 »

  1.   

    将数据库放在程序所在目录下,语句改成:Data Source=app.path & "\bbb.mdb"
      

  2.   

    Set Conn = New Connection
        With Conn
          .ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\bbb.mdb"
          .Open
        End With
      

  3.   

    哦,我指的是在封装成dll的时候。您再看看?
      

  4.   

    哦,我指的是在封装成dll的时候。您再看看?
    ============封装的dll里一样可以这样用
    App.Path & "\aaa.mdb"
      

  5.   


    Public gDBConn As ADODB.ConnectionPublic Sub SetAdo( inConnection As ADODB.Connection)
       Set gDBConn = inConnection
    end sub
    这样不就可以了吗?然后调用dll的时候可以把连接传进去
      

  6.   

    msconnect = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
                        "Data Source=" & Trim$(FileName) & ";" & _
                        "Jet OLEDB:Database Password=;" & _
                        "Jet OLEDB:Engine Type=5;"if database path is in application folder then:
    FileName=app.path & IIf(Right$(app.path, 1) <> "\", "\", vbNullString) & "bbb.mdb"otherwise:FileName="c:\aaa\bbb.mdb"
      

  7.   

    呵呵, 我来拿分了。 
    VBAdvisor,以及上面的同志
    Dll里面好像不存在App这个对象的。应该是要加上一个Server的对象,才可以。
    具体代码大家如果需要,可以向 ab9(落寞的微笑) 索求。
      

  8.   

    server好象是不能在vb中直接用,所以要转换一下