我安装pdf.ocx后,做了个简单的打开pdf文件的程序,在自己的机器和已经装过acrobat reader的机器上试验成功。可没装acrobat reader的机器上先注册了pdf.ocx后,再运行该程序,还是报错,我琢磨着是肯定少东西,可到底少么啊?大家帮忙,先行谢过!

解决方案 »

  1.   

    title: Acrobat plug-inCould not find Acrobat External Window Handler以上就是错误内容了
    请高人指点啊!
      

  2.   

    我和killlaoli分析觉得是因为pdf.ocx还关联了一些其它的东西,可怎么知道到底还关联到那些东西呢!???
      

  3.   

    据我观察系统监视器得出,在我的机器上,启动了我编的调用pdf.ocx的程序,实际上就会把Acrobat Reader运行起来。可是我们现在需要的是没有安装acrobat or acrobat reader的机器上读取pdf文件啊!高人救命啊!
      

  4.   

    我觉得应该是Acrobat Reader自带的一些dll文件....
      

  5.   

    您知道怎么查看到底是那些dll文件吗?
      

  6.   

    我dumpbin它的导入dll
    没什么别的,不太明白
        urlmon.dll
        WININET.dll
        VERSION.dll
       USER32.dll
        KERNEL32.dll
       GDI32.dll
        ADVAPI32.dll
        ole32.dll
       SHELL32.dll
        comdlg32.dll
        WINSPOOL.DRV
        OLEAUT32.dll
      

  7.   

    to xzgyb(老达摩):是啊,这些dll没装acrobat的机器上也都有的。
    那它到底加载了什么有用的东东啊?(是否可以理解为这些有用的东东是非dll文件?)
      

  8.   

    killaoli:
    我试了一下
    只有AcroRd32.exe这个程序启开了
    才可以
      

  9.   

    说的正是,天晓得Adobe调用了那些东东!!真是郁闷啊!
      

  10.   


    正常运行的时候,写一个程序查看一下adobe调用了那些模块
    这些模块清楚地包含了所有他现在调用的路径,你记录一下那些模块.有些模块不会在导入表中加载,因为他们是在程序运行的时候动态载入的.
    吧Exe拷贝过来,然后在运行程序.
    如果正如上面的大哥讲的一样要启动什么程序先.那你就先启动一下好了.
    如果还是不行,建议使用softice,进行调试下断点,
    bpm messageboxa 
    一般是这一个,然后你在调试上面的汇编代码.运气好可能可以发现为什么不能启动.
      

  11.   

    to 楼主:
          
           老户桑,大半个月没你消息了,也不知道死活,给你发消息也不回,忙? 我是经常跟你探讨vc的、经常一起上烤串店的那位,知道了吧!呵呵       up
      

  12.   

    既然启动了AcroRd32.EXE,很明显pdf.ocx只不过是一个OLE Container,所以别指望可以在没装Acrobat Reader上的机器上使用pdf.ocx。
      

  13.   

    http://expert.csdn.net/Expert/topic/1550/1550002.xml?temp=.787533
    请教
    :(