求教VB制作ActiveX  DLL数据库连接代码,及传入值和输出调用  
 
我也看了一些代码,ActiveX  DLL的使用方法我已经明白了一些  
但是:我就是连接不到数据库上,也不明白返回的结果在那里,怎么调用  
希望个位大侠给以指点,并且给点案例代码。  
     非常感谢!!  
     不方便发布的可以发到我的EMAIL里    再次感谢!!!!!!!!!!!!  
     [email protected]

解决方案 »

  1.   

    非常感谢!!!
    我有一段代码??但是不知道结果返回到了那里,
    不知道怎么用,Public Function executesql(ByVal sql As String, ByVal msgstring As String) As ADODB.Recordset
        '传递参数SQL传递查询语句,MSGBOX传递查询信息
        '自身以一个数据集对象的形式返回
         Dim cnn As ADODB.Connection
         '定义连接
         Dim rst As ADODB.Recordset
         '定义字符串
         Dim stokens() As String
         '错误处理
    On Error GoTo executesql_error
         stokens = Split(sql)       '用SPLIT函数产生一个包含各个子串的数组
         Set cnn = New ADODB.Connection      '创建连接
         cnn.Open connectstring             '打开连接
         If InStr("insert,delete,update", UCase$(stokens(0))) Then
            '判断字符中中否含有以上指定字段内容
             cnn.Execute sql              '执行查询语句
             msgstring = stokens(0) & "query successful"      '返回查询信息
         Else
             Set rst = New ADODB.Recordset           '创建记录集对象
             rst.CursorLocation = adUseClient
             rst.Open Trim$(sql), cnn, adOpenStatic, adLockOptimistic, adCmdText
             Set executesql = rst
             msgstring = "查询到" & rst.RecordCount & "条记录"
         End If
    executesql_exit:
         Set rst = Nothing        '清空数据对象
         Set cnn = Nothing        '中断连接
         Exit Function
    executesql_error:
         msgstring = "查询错误:" & Err.Description      '错误类型判断
         Resume executesql_exit
    End Function
    Public Function connectstring() As String
       '动态链接数据库
        connectstring = App.Path
        If Right(connectstring, 1) <> "\" Then
           connectstring = connectstring + "\"
        End If
           connectstring = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + connectstring + "\student.mdb;Persist Security Info=False"
    End Function
      

  2.   

    这个函数,可以直接调用吗??
    用封装到类里吗???因为我用在ASP里,请帮个忙了,
      

  3.   

    你新建一个Activex DLL工程
    把代码复制到类里面
    再编译,用VB自带的打包程序打包后,安装
    然后就可以在VB工程的"引用"项内看到你做的DLL
    在ASP里面可以象调用ADODB.connection对象一样对调用你的DLL
      

  4.   

    你说的的确不错,但是这样我还不如调用ADODB.connection来的方便呢我是想把一些逻辑和代码写进去呀!!我想直接在Activex DLL 内操作数据库  设置子程序 定义函数 在ASP内直接调用传入参数可以返回结果。非常感谢你!!
      

  5.   

    单独就这一项功能来说
    是不如调用ADODB方便
    但用DLL的优点是把很多的业务逻辑进行封装
    再有就是保护你的代码
    写在ASP里一般软件都能看
    做成DLL以后就不同了,还可以加上使用时间,注册等功能...
      

  6.   

    如果你在EXE工程中使用过类模块
    那么用VB做一个DLL应该很简单了
      

  7.   

    看了一下,不能返回值是因为下例语句:
    ASP与VB环境不一样,去掉后试试吧executesql_exit:
         Set rst = Nothing        '清空数据对象
         Set cnn = Nothing        '中断连接
         Exit Function