ado访问数据库提示error C2039: “Open”: 不是“_com_ptr_t<_IIID>”的成员
stdafx.h中引用了ado:
#import "C:\Program Files\Common Files\System\ado\msado15.dll" no_namespace rename("EOF", "adoEOF")
,在dlg.h中定义了局部变量_ConnectionPtr m_pConnection;在dlg.cpp中进行使用:
m_pConnection.CreateInstance("ADODB.Connection");
m_pConnection.Open("Proivder=Microsoft.Jet.OLEDB.4.0;Data Source=device.mdb","","",adModeUnknown);
编译提示:
1>d:\bl\博维仕\testado\testadodlg.cpp(93) : error C2039: “Open”: 不是“_com_ptr_t<_IIID>”的成员
1> with
1> [
1> _IIID=_com_IIID<_Connection,& _GUID_00000550_0000_0010_8000_00aa006d2ea4>
1> ]
[解决办法]
m_pConnection.Open("Proivder=Microsoft.Jet.OLEDB.4.0;Data Source=device.mdb","","",adModeUnknown);//->m_pConnection->Open("Proivder=Microsoft.Jet.OLEDB.4.0;Data Source=device.mdb","","",adModeUnknown);
[解决办法]
对象指针要用->访问成员函数