欢迎光临
我们一直在努力

如何在VC++ 编写的组件中使用 ADO

建站超值云服务器,限时71元/月

 
如何在vc++ 编写的组件中使用 ado

简介
这篇文章是给那些习惯于用vb开发组件的人想转用vc++时看的。本文用一个简单的例子示范如何使用ado recordset 对象。
在vb中,当你想要返回一个ado recordset,你会这样写…

function getrecordset() as object
     dim cn as adodb.connection
     dim rs as adodb.recordset
     set cn = new adodb.connection
     cn.open "dsn=advworks"
     set rs = cn.execute("select * from customers")
     set getrecordset = rs
end function

那么让我们来看看用vc++如何实现呢?
在vb中,你会使用’project->references菜单来使用其它com组件,例如ado。在vc++中,要使用#import声明。在你的.cpp或.h文件中插入这样一句。

#import "c:\program files\common files\system\ado\msado15.dll" no_namespace rename ( "eof", "adoeof" )

然后加一个方法。右击classview ,选择 add method。
method name: getrecordset
parameters: [out, retval] idispatch **rs]
现在是关键…

stdmethodimp cadosample::getrecordset(idispatch **rs)
{
     _connectionptr pcn;
     _recordsetptr prs;
     _variant_t vtempty;
     pcn.createinstance(__uuidof(connection));
     pcn->open("dsn=advworks", "", "", -1);
     prs = pcn->execute("select * from customers",
           &vtempty, adcmdunknown);
     prs->queryinterface(iid_idispatch,
           (void**) rs);
     return s_ok;
}

看看,vc++程序几乎与vb一模一样,谁说vc++难用?
讨饭猫翻译
jan.14 2001

赞(0)
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com 特别注意:本站所有转载文章言论不代表本站观点! 本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。未经允许不得转载:IDC资讯中心 » 如何在VC++ 编写的组件中使用 ADO
分享到: 更多 (0)