<求助>谁能帮帮我:“CoInitialize”的编译错误!!!
环境:VS2008,Windows Mobile 5.0 想通过应用程序调用ATL控件
一直编译错误:error C2039: “CoInitialize”: 不是“`global namespace'”的成员
error C3861: “CoInitialize”: 找不到标识符
备注:改用::CoInitializeEx(NULL,COINIT_APARTMENTTHREADED);没有编译错误,不过函数CoCreateInstance()抛出异常:没有调用CoInitialize()
哎~折腾了一天也没搞定!希望大家指点一下!不胜感激!
源代码如下:
void CTestAtlDlg::OnBnClickedPinButton()
{
// TODO: 在此添加控件通知处理程序代码
::CoInitialize( NULL );// COM 初始化
CLSID clsid;
HRESULT hr = ::CLSIDFromProgID( L"WapAtl.WapAtlCtl.1", &clsid );
ASSERT( SUCCEEDED( hr ) );// 如果失败,说明没有注册组件
CComPtr < IUnknown > spUnk;// 由 CLSID 启动组件,并取得 IUnknown 指针
REFIID id=__uuidof(IWapAtlCtl);
hr=::CoCreateInstance(clsid,NULL,CLSCTX_INPROC_SERVER,id,(LPVOID *)&spUnk);
ASSERT( SUCCEEDED( hr ) );
CComDispatchDriver spDisp( spUnk );// 构造智能指针
hr = spDisp.Invoke0(
L"CheckPin"
);
ASSERT( SUCCEEDED( hr ) );// 如果失败,说明或者没有 ADD 函数,或者参数错误
::CoUninitialize();
}
[解决办法]
<>哪位高手能帮帮小弟我:“CoInitialize”的编译异常!
求助谁能帮帮我:“CoInitialize”的编译错误!!!环境:VS2008,Windows Mobile 5.0 想通过应用程序调用ATL控
