php代码
<?
header("content-Type: text/html; charset=gb2312");$para="7911511D-00780176-0D7941C2";
$para1="aa2ssw@adsla"; 
$examplecom=new COM("CncCom.DataBending"); 
$output=$examplecom->Bending($para,$para1); 
echo $output;
?>我的com是可以被vc程序调用的,com也是vc写的,接口定义如下:
interface IDataBending : IDispatch
{
[id(1), helpstring("method Bending")] HRESULT Bending([in] VARIANT vs1,[in] VARIANT vs2);
};

解决方案 »

  1.   

    不是吧?我是在windows上搭建的php啊,在说了,不是书上写的com是可以跨平台的吗?怎么会这样啊???
      

  2.   

    我实验过用PHP调用COM组件,发现可以调ATL的,MFC做的ActiveX不可以,可能是少了些什么接口。
      

  3.   

    “com是可以跨平台的”这句话本身是没有错的,具体说是“com是可以跨windows平台的”。
      

  4.   

    这样试试:
    假设你com 的工程名为 Proj_Com , short name 为Com_01
    有一个方法TEST([in] VARIANT,[in] VARIANT,[out,retval] VARIANT)<%
      set obj = Server.CreateObject("Proj_Com.Com_01")
      dim ss = obj.TEST(1,2)
      response.write ss  %>
      

  5.   

    MFC 的ActiveX实现IDispatch 接口 才可以在PHP里面用