CAcroPDDocPtr pdfDoc;
HRESULT hr=pdfDoc.CreateInstance(__uuidof(CAcroPDDoc)); //hr = 0x80040154 没有注册类  int i=1;
struct __declspec(uuid("9b4cd3e7-4981-101b-9ca8-9240ce2738ae"))
/* dual interface */ CAcroPDDoc;
struct __declspec(uuid("e64169b3-3592-47d2-816e-602c5c13f328"))
/* LIBID */ __Acrobat;
注册表里有这些接口的的以上的定义是从tlh里看到的。

解决方案 »

  1.   

    貌似这个人也遇到类似问题,不过他是ado的http://blog.csdn.net/friendan/article/details/6981238
      

  2.   

    你觉得我会不初始化吗?我猜测:CAcroPDDocPtr pdfDoc;
     HRESULT hr=pdfDoc.CreateInstance(__uuidof(CAcroPDDoc)); //hr = 0x80040154 没有注册类  这个函数的参数是该传入 接口的iid还是传入 clsid.iid和clsid 类型一样,意义不一样, 后者代表“实现”,前者是“接口”
      

  3.   

    CAcroPDDocPtr pdfDoc22;
    HRESULT hxxx=pdfDoc22.CreateInstance(__uuidof(AcroPDDoc));__uuidof里传入的应该是类名,即:clsdiCAcroPDDoc 是接口。即:iid明显错误