您的位置:首页技术开发ASP技巧 → 如何在VC++ 编写的组件中使用 ADO

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

时间:2004/11/7 4:10:00来源:本站整理作者:蓝点我要评论(0)

如何在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++难用?


相关阅读 Windows错误代码大全 Windows错误代码查询激活windows有什么用Mac QQ和Windows QQ聊天记录怎么合并 Mac QQ和Windows QQ聊天记录Windows 10自动更新怎么关闭 如何关闭Windows 10自动更新windows 10 rs4快速预览版17017下载错误问题Win10秋季创意者更新16291更新了什么 win10 16291更新内容windows10秋季创意者更新时间 windows10秋季创意者更新内容kb3150513补丁更新了什么 Windows 10补丁kb3150513是什么

文章评论
发表评论

热门文章 没有查询到任何记录。

最新文章 VB.NET 2005编写定时关 Jquery get/post下乱码解决方法 前台gbk gb如何使用数据绑定控件显示数据ASP脚本循环语句ASP怎么提速

人气排行 轻松解决"Server Application Error"和iis"一起学习DataGridView调整列宽用ASP随机生成文件名的函数Jquery get/post下乱码解决方法 前台gbk gbODBC Drivers错误80004005的解决办法返回UPDATE SQL语句所影响的行数的方法用Javascript隐藏超级链接的真实地址两个不同数据库表的分页显示解决方案