首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

CoCreateInstance 施行失败

2012-11-06 
CoCreateInstance 执行失败if ( FAILED( ::CoInitialize( NULL ) ) ){return false}CLSID pdfCLSIDCLSID

CoCreateInstance 执行失败
if ( FAILED( ::CoInitialize( NULL ) ) )
{

  return false;
}

CLSID pdfCLSID; 
CLSIDFromProgID( L"PDFCreator.clsPDFCreator", &pdfCLSID ); 

HRESULT hr = CoCreateInstance(pdfCLSID,NULL,CLSCTX_ALL,__uuidof(PDFCreator::_clsPDFCreator),
reinterpret_cast<LPVOID*>(&pdfCreator)); 
if ( FAILED(hr) )
{
  return false;
}

在我本机上有安装PDFCreator,Adobe Acrobat7.0,Adobe Reader 9.0,程序运行正常,在测试机上安装的也是同样的pdf软件,但CoCreateInstance函数执行失败,这是为什么啊?

[解决办法]

探讨
to : yisikaipu
Release版,无法调试,只知道返回错误。

安装PDFCreator的时候,是不是自动注册它自己COM接口?
如果是COM接口没有注册好?要怎么手动注册呢?

[解决办法]
我记得com里 只要把光标放到hr那里,就会提示:错误原因,不仅仅是一个数字

当然,如果不行的话,hi则能够getlasterror了。

然后 用这个错误码去查找错误原因了.




探讨
引用:
to : yisikaipu
Release版,无法调试,只知道返回错误。

安装PDFCreator的时候,是不是自动注册它自己COM接口?
如果是COM接口没有注册好?要怎么手动注册呢?


release版也可以调试的

至少debug调试总可以吧,debug版没错?

哪怕把hr用消息框发出来嘛

注册表根目录下搜 PDFCreator.……

热点排行