我在一个DLL中,使用CoCreateInstanceEx出现错误,返回值为:0x80010005(在消息筛选器里时,不可对外调用)
代码如下:
USES_CONVERSION;
IOPCServerList* pServers=NULL;

COSERVERINFO si;
MULTI_QI  qi;
HRESULT hr;
si.dwReserved1 = 0;
si.pwszName = NULL;
if( !m_Node.IsEmpty() )
{
si.pwszName = T2OLE(strNode.GetBuffer(0));
strNode.ReleaseBuffer();
}
si.pAuthInfo = NULL;
si.dwReserved2 = 0;

qi.pIID = &IID_IOPCServerList;
qi.pItf = NULL;
qi.hr = 0;



//hr = CoCreateInstanceEx(CLSID_OPCServerList, NULL, CLSCTX_ALL, &si, 1, &qi);
hr = CoCreateInstanceEx(CLSID_OPCServerList, NULL, CLSCTX_ALL, NULL, 1, &qi);
if (FAILED(hr) || FAILED(qi.hr))
{
TRACE("ERROR...%X\n",hr);
         }
这个错误是有时候出来的。我不知道到底是怎么回事。先给50分,解决问题后再给100分。