COM+ 对象中如何写一个方法返回Recordset
我写了一个COM+组件,放在系统组件服务中了,其中写了几个测试方法返回Intger,string,客户端调用都没有任何问题,但是我如果写返回Variant类型就无法编译了(&H80004005 错误),不知道原因
我想通过一个Function返回给调用者一个Recordset,不知道该如何实现呀,请高手们指教呀!
问题点数:80、回复次数:6Top
1 楼unsigned(僵哥(发站内消息,请附上链接或问题说明,否则不予回复))回复于 2005-01-12 22:45:59 得分 10
把你代码贴出来看看?我们的COM+应用程序所有交互,都通过Variant型Top
2 楼wushu(浪子)回复于 2005-01-13 09:04:17 得分 30
public function 方法名(参数表) as ADODB.Recordset
...
end function
不就结了Top
3 楼veryhappy(wx.net)回复于 2005-01-13 09:35:33 得分 0
比如我在对象中随便加一个方法A返回值设置为string,只删除代码本身还去不掉方法A,一编译就出现&H80004005的错误,不知道如何正确删除这个方法。
wushu(浪子) 说得没错,我已经调试出来了,稍后把我的代码帖上来……Top
4 楼veryhappy(wx.net)回复于 2005-01-13 09:49:11 得分 0
代码示例:
对象名称:MyVB_COM.COMClass
COM+组件服务器中方法Test
Public Function Test() As Recordset
Dim cn As New Connection
Dim rs As New Recordset
cn.Open "driver={SQL Server};server=localhost;database=pubs;uid=sa;pwd="
rs.CursorLocation = adUseClient
rs.CursorType = adOpenStatic
rs.LockType = adLockReadOnly
rs.ActiveConnection = cn
rs.Open "select * from Employee", cn
Set Test = rs
End Function
客户端EXE调用代码
Private ox As New MyVB_COM.COMClass
Private rs As New Recordset
Private Sub Form_Load()
Set rs = ox.Test()
End SubTop
5 楼creazyfish(梳分头的鱼)回复于 2005-01-13 10:35:54 得分 20
你不应该用Variant型!!!
用object就可以!
当然如果你确切知道返回recordset类型,可以直接返回recordset啊!veryhappy(wx.net)说的没有错,不过记得引用ado就可以了Top
6 楼online(龙卷风V4.0--决战江湖(MS MVP-VB))回复于 2005-01-13 15:04:51 得分 20
http://www.xc-soft.com/docs/3tieranddatabase.htm
返回recordset类型就行了Top
相关问题
- 如何调用WebService返回的复杂对象中的方法
- C#中有没有使方法返回只读对象?
- recordset对象的recordcount属性为什么返回-1?
- 为什么Command对象返回的Recordset不支持AddNew
- 组件的函数能否返回ADO的RecordSet对象
- 函数返回一个recordset对象是的问题
- ado的Connection对象的Execte方法会对Recordset对象有什么影响??
- 组件返回对象是如何实现的,比如 set obj=组件.方法 返回的值是个对象!
- RECORDSET对象的UPDATE方法时出现以下错误提示
- 为急!!recordset对象中GetRows方法的使用




