VB编写DLL时关于“引用”的相关知识

一、ASP内部对象的“引用”

在Dll里,不能直接使用ASP的内部对象,要使用ASP的内部对象,必须引用“COM+ 服务类型库(Comsvcs.dll)”和ASP.Dll。如何访问Visual Basic COM组件内的Active Server Pages内部对象,详见:http://support.microsoft.com/kb/299634/zh-cn

也就是说,编写组件,如果在dll中使用Asp的内部对象——比如Response,Request,Session,Application,Server等,必须引用:

1、COM+ Services Type Library 即“COM+ 服务类型库(Comsvcs.dll)”
2、Microsoft Active Server Pages Object Library 对象库ASP.Dll

代码参考如下:

Private Response As Response
Private Request As Request
Private Server As Server
Private Application As Application
Private Session As Session
Private objContext As ObjectContext

Private Sub Class_Initialize()
  Set objContext = GetObjectContext()
  Set Response = objContext("Response")
  Set Request = objContext("Request")
  Set Server = objContext("Server")
  Set Application = objContext("Application")
  Set Session = objContext("Session")
End Sub

Private Sub Class_Terminate()
 Set ojbSContext = Nothing
 Set Response = Nothing
 Set Request = Nothing
 Set Server = Nothing
 Set Application = Nothing
 Set Session = Nothing
End Sub

二、使用ADO则必须引用 Microsoft ActiveX Data Objects 2.7 Library

代码参考如下:

'Conn 得到数据库连接对象  ADODB.Connection
Public Property Let Cls_GetConn(ByVal TmpDB As String)
 Set mmConn = New ADODB.Connection
 mmConn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & TmpDB
End Property

' ADODB.Recordset
Public Sub Cls_Ins()
 Dim N
 mmSQL = "SELECT * FROM " & mmTable
 Set mmRs = New ADODB.Recordset
 mmRs.Open mmSQL, mmConn, 1, 3
 mmRs.AddNew
 For N = 0 To UBound(mmFieldsArr)
  mmRs(mmFieldsArr(N)) = mmValuesArr(N)
 Next
 mmRs.Update
End Sub

ADODB.Stream对象
Set mmOSM = New ADODB.Stream
If Err.Number = -2147221005 Then
  Response.Write "非常遗憾,您的主机不支持ADODB.Stream,不能使用本程序"
  Err.Clear
  Response.End
End If

三、使用FSO,则必须引用 Microsoft Scripting Runtime (FSO—Scrrun.dll)

代码参考如下:

Set mmFSO = New FileSystemObject
If Err Then
  Response.Write "<li>您的空间不支持FSO,或者没有相关权限,不能使用本程序。此错误描述如下:" & Err.Description & "</li>"
  Err.Clear
  Response.End
End If

四、其它

如果使用上下文环境,需要使用Microsoft Active Server Pages ObjectContext Object Library,主要是事务的使用,如setcomplete等等。一般来说,使用Microsoft Active Server Pages Object Library就够了,如果使用事务,可以使用ado的

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值