ATL COM 和 ADO
2006-07-22 22:53:03 来源:WEB开发网核心提示: cmd->ActiveConnection=conptr;把要执行的SQL语句存储到Command对象的CommandText属性中:cmd->CommandText="<Your SQL statement goes here>"创建Recor
cmd->ActiveConnection=conptr;
把要执行的SQL语句存储到Command对象的CommandText属性中:
cmd->CommandText="<Your SQL statement goes here>"
创建Recordset 对象并指明作为记录源的Command对象:
_RecordsetPtr rst(__uuidof(Recordset));
rst->PutRefSource(cmd);
现在打开Recordset,使用Open方法,如下:
_variant_v vNull;
rst->Open(vNull,
vNull,
adOpenDynamic,
adLockOptimistic,
adCmdText);
Open方法有个参数第一个和第二个参数是数据源的名称和各自的活动连接由于数据源在Connection对象中已经被ActiveConnection 属性指定了,而且在Command 对象中也被指定了,所以第一个和第二个参数使用了NULL的变体值。第三个参数指明了指针类型,第四个参数指明了锁定参数,第五个参数指明了在命令被发送时数据库应该怎样评估命令。现在创建的Recordset对象指针将会引用由SQL语句返回的记录集,我们应该把这个Recordset返回给客户机,使用如下代码:rst->QueryInterface(__uuidof(_Recordset), (void **) ptr);
QueryInterface函数使用了Recordset对象的IID 并返回由SQL语句返回的记录集的引用,当客户机调用SearchCust 方法时,这个指针会返回给客户机。
反初始化 COM库:
::CoUninitialize();
现在构建(build)组件,这将会把DLL注册到注册表中。
创建客户机
打开 VB 并创建一个新的标准EXE工程(Standard EXE project)。很简单,这里就不详细描述了。
- ››Adobe推出用于iOS设备创建PDF文件的应用
- ››COM 组件多层聚合嵌套原理
- ››Adobe发布Acrobat X 不支持苹果iOS系统
- ››Adobe公司展示plenoptic lenses技术
- ››Adobe:移动版Flash实测性能高于HTML5视频
- ››Adobe更新Web版Photoshop 无需注册即可使用
- ››Adobe Flash 10.1被曝支持Android效果不佳
- ››Adobe Flash 10.1 for Android 版本被曝工作状况不...
- ››Adobe CEO:不担心iPhone和iPad封Flash技术
- ››Adobe为iPad、Android平台发布免费Photoshop
- ››Adobe发布Android版Flash 10.1 Beta 3
- ››ADO VC++ Extensions入门
更多精彩
赞助商链接