我用VS2008写了一个ATL组件,加了两个属性一个方法.
http://www.jb51.net/article/48556.htm 就是按照这里的步骤.注册dll后,在php里的代码是这样的.
<?php
       $com1 = new COM("abc.def");
$sss=$com1->add1(1, 2); 
echo $sss;
?>
然后报错,
( ! ) Fatal error: Uncaught exception 'com_exception' with message 'Failed to create COM object `abc.def' in D:\wamp\www\finger\php.php on line 3
( ! ) com_exception: in D:\wamp\www\finger\php.php on line 3
,不知道是怎么回事,但是运行 $word = new COM("word.application"),就没有问题,不知道原因到底在哪里,求各位大哥大姐帮帮忙,刚接触这个,谢谢谢谢,十分感谢.

解决方案 »

  1.   

    你的COM组件没有注册
      

  2.   

    我注册了啊!不是打开cmd 然后 regsvr32 路径文件名 ,然后提示注册成功吗?我已经注册啦。还是这样。 
      

  3.   


    我注册了啊!不是打开cmd 然后 regsvr32 路径文件名 ,然后提示注册成功吗?我已经注册啦。还是这样。 
      

  4.   

    Fatal error: Uncaught exception 'com_exception' with message 'Failed to create COM object `abc.def' in D:\wamp\www\finger\php.php on line 3
    '创建COM对象 ABC DEF 失败
      

  5.   


    我知道啊!这个错误是什么愿意呢?PHP设置也好了,但是我自己用VS2008写的一个测试用的ALT组件 加载失败...不知道是哪里错误...我写好组件,编译后,然后在debug目录下找到DLL,然后CMD-regsvr32 鼠标把DLL拉进去,回车.提示注册成功,然后PHP运行失败,NEW COM的时候里面的的参数是progID,这个ID有一个是abc.def,还有一个是abc.def.1 我也不知道用哪个,两个都试了,但是都不行..能不能加下QQ帮我一下呀,,,谢谢版主大人了....我qq 76680740