首先,在stdafx.h文件中,导入ado15.dll,添加代码:
#import "ado/msado15.dll"no_namespace rename("EOF","adoEOF")
no_namespace 表示没有命名空间
rename ("EOF","adoEOF")表示将记录集结束标记EOF,重命名为adoEOF,因为文件的结尾也是以EOF标记的,这样可以避免冲突。
然后在CPP类的初始化函数中添加代码:
这佯作的原因是,cpp类中有个编译器自动生成的应用程序自身对象 theapp,可以很方便的调用。同时能提高代码重复利用率,提高编写效率。
AfxEnableControlContainer();
::CoInitialize(NULL);
HRESULT hr;
try {
hr=m_pCon.CreateInstance("ADODB.Connection");
if(SUCCEEDED(hr))
{
m_pCon->ConnectionTimeout=3;//异常超时时间
hr=m_pCon->Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=CanYin.mdb","","",adModeUnknown);
//设置数据库名,用户名,密码
}
}
catch(_com_error e)
{
CString temp;
temp.Format("连接数据库错误信息:%s",e.ErrorMessage());
::MessageBox(NULL,temp,"提示信息",NULL);
return false;
}
在要引用数据库的类中,添加代码如下:引用之前定义的公共模块,提高代码重复利用率。
CCanYinApp theApp;