我使用vs2008 ATL向导创建了一个COM dll . 我创建了一个新的界面并实现了两种方法 . 我希望从另一个应用程序访问此COM组件的向导处理默认功能 .
当我使用CoCreateInstance()或CoGetClasObject()时,我得到类未注册错误(0x80040154) . 我是否错过了在COM dll中实现的内容?我使用regsvr32注册了dll,并在注册表中创建了CLSID,IID,Typelib的相应条目 .
Client Code:
::CoInitializeEx(NULL, COINIT_MULTITHREADED);
ISampleCOM* pSampleCOM;
HRESULT hr = ::CoGetClassObject(CLSID_CSampleCOM,CLSCTX_LOCAL_SERVER,NULL,
IID_ISampleCOM, (void**)&pSampleCOM);
hr正在返回(0x80040154)类未注册错误
任何帮助对我都有很大帮助
1 回答
这取决于您从哪里访问com对象,例如,32位应用程序将访问其程序集使用x86配置构建的对象,64位应用程序将访问其程序集使用x64配置构建的对象 .