MFC初始化COM环境总出错
errorC2228:leftof'.CreateInstance'musthaveclass/struct/uniontype编译出错StdAfx.h中#import"...
error C2228: left of '.CreateInstance' must have class/struct/union type编译出错
StdAfx.h中
#import "C:\Program Files\Common Files\System\ado\msado15.dll"named_guids rename("EOF","adoEOF"), rename("BOF","adoBOF")
using namespace ADODB;
#include <ICRSINT.H>
InitInstance()函数中
if(!AfxOleInit())//这就是初始化COM库
{
AfxMessageBox("LE初始化出错!");
return FALSE;
}
给CMy2View类增加了
{
public:
_RecordsetPtr m_pRecordset;
_ConnectionPtr m_pConnection; 两个指针
}
void CMy2View::OnInitialUpdate()
{
CListView::OnInitialUpdate();
::CoInitialize(NULL);//初始化COM环境
m_pDocument.CreateInstance(_uuidof(Connection));
m_pRecordset.CreateInstance(_uuidof(Recordset));
m_pConnection->Open("DSN=sysDB","","",0);
::CoUninitialize();//初始化对象释放
}
到底是哪出错了呢 为什么总是提示CreateInstance前面不是结构体?各位大侠帮帮忙吧 展开
StdAfx.h中
#import "C:\Program Files\Common Files\System\ado\msado15.dll"named_guids rename("EOF","adoEOF"), rename("BOF","adoBOF")
using namespace ADODB;
#include <ICRSINT.H>
InitInstance()函数中
if(!AfxOleInit())//这就是初始化COM库
{
AfxMessageBox("LE初始化出错!");
return FALSE;
}
给CMy2View类增加了
{
public:
_RecordsetPtr m_pRecordset;
_ConnectionPtr m_pConnection; 两个指针
}
void CMy2View::OnInitialUpdate()
{
CListView::OnInitialUpdate();
::CoInitialize(NULL);//初始化COM环境
m_pDocument.CreateInstance(_uuidof(Connection));
m_pRecordset.CreateInstance(_uuidof(Recordset));
m_pConnection->Open("DSN=sysDB","","",0);
::CoUninitialize();//初始化对象释放
}
到底是哪出错了呢 为什么总是提示CreateInstance前面不是结构体?各位大侠帮帮忙吧 展开
2个回答
展开全部
肯定不关com库的初始化,是否是导入的类型库什么的不对,导致对象定义找不到还是什么的。应该是纯的编译错误。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
写错了
m_pDocument.CreateInstance(_uuidof(Connection)); ==> m_pConnection.CreateInstance(_uuidof(Connection));
m_pDocument.CreateInstance(_uuidof(Connection)); ==> m_pConnection.CreateInstance(_uuidof(Connection));
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询