a我考网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 103|回复: 0

[程序员] 2012年软件水平初级资格程序员考试重点知识10

[复制链接]
发表于 2012-8-2 08:51:15 | 显示全部楼层 |阅读模式
在利用ado连接数据库之前,需要做一些准备
, ]% g# |  J& U; k2 N7 t5 {2 U7 _/ ~: Y- w
  1.用#import指令引入ADO类型库
* ^3 {2 C/ y) y- \, @' C! ?  E% v# Y  M: e3 R+ p+ p: v; L( e
  我们在stdafx.h中加入如下语句:/ ^( s: c4 I! B3 F) \5 Q

4 e; p* o. D* R' C( T$ S7 e- x  #import “c:program filescommon filessystemadomsado15.dll” no_namespace rename(“EOF”,“adoEOF”) .
. X6 I+ [2 p- Z8 J- p( m/ I, v3 u; e- q
  这一语句有何作用呢?其最终作用同我们熟悉的#i nclude类似,编译的时候系统会为我们生成msado15.tlh,ado15.tli两个C++头文件来定义ADO库。
7 Y6 }# a  d. x" F' ^- \( s; \0 N6 h7 U+ f2 L. u9 ^
  几点说明:
7 C, i: }( m' ?  |7 z* P8 Y
  `7 }: H0 ]) {9 I7 {  (1) 您的环境中msado15.dll不一定在这个目录下,请按实际情况修改
+ b! _4 p) D6 [6 v- A/ W5 Y# e5 F. X! P) r6 F& W6 ^
  (2) 在编译的时候肯能会出现如下警告,对此微软在MSDN中作了说明,并建议我们不要理会这个警告。msado15.tlh(405) : warning C4146: unary minus operator applied to unsigned type, result still unsigned) G7 p+ P1 f* q, G) K3 r
0 {* O: W9 {/ U6 Q" a6 \7 b
  2、初始化OLE/COM库环境
  t& K3 A# x8 C$ n& E& G
4 ^/ D1 V* ^) s4 c( H. V0 D  必须注意的是,ADO库是一组COM动态库,这意味应用程序在调用ADO前,必须初始化OLE/COM库环境。在MFC应用程序里,一个比较好的方法是在应用程序主类的InitInstance成员函数里初始化OLE/COM库环境。
( g- S0 ^7 b) ~5 u, Y
5 d& l$ w: G2 q) c9 A  r  BOOL CMyAdoTestApp::InitInstance()
9 \5 H' o) [+ A1 T
' w* I1 i' [# p  {  @% e: v; {( e" f% i3 e: _

; d9 E& ^/ E- G: G8 m. V' `8 c  if(!AfxOleInit())//这就是初始化COM库
7 p. D% `8 z9 y, d& I) @
' d  \1 I9 n+ b2 B  {; s8 f+ e& g/ p1 S; X

3 v9 K& B) S# e) C  m4 a" {4 j  AfxMessageBox(“OLE初始化出错!”);! I& g. X5 p: M$ d5 ~- F
# r4 U/ L7 g9 v$ J5 }
  return FALSE;. g- ]& g7 o7 ~, O9 \, h) d

: n' g# d9 d! ]% C  e0 @0 A  }5 {/ z# j; K" n) W: m
7 a! E, ?4 r* n, X8 ^
  }  
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Woexam.Com ( 湘ICP备18023104号 )

GMT+8, 2024-6-17 07:53 , Processed in 0.278686 second(s), 21 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表