环境: xp sp3, IE8
用 vc6的activex wizard写了一个OCX。添加了一个方法short MyAdd(short p1, short p2) {return p1+p2;}
然后拷贝到c:\windows\system32下, 用regsvr32注册成功.写了一个aaa.htm:
<OBJECT ID="ppp" CLASSID="CLSID:XXXXXXXXX" >
</OBJECT><script>
var aaa = ppp.MyAdd(1,2);
windows.alert(aaa);
</script>直接在IE8中打开该文件,则显示 3. 正确。我把该文件放在TOMCAT7的ROOT目录下, 
在IE8中输入: http://127.0.0.1:8080/aaa.htm 本机为服务器端和客户端。
经调试得知:ppp.MyAdd(1,2); 此行出错, 无该方法或属性。
 怎么办?
直接用regsvr32注册可以吗? 还是我做的OCX有问题,就是 一个简单的加法函数呀。

解决方案 »

  1.   

    IE的internet和intranet的安全等级是不一样的,你本地打开htm文件可能允许加载这个ocx,访问本机如果也算是远程访问的话就可能不允许你加载,先设置下安全等级各项,试试后再看是不是别的问题.
      

  2.   

    我试了,不是安全级别的问题。
    OCX必须签名吗? 我未签名。不签名也可以呀,因为是在本地呀。在system32下
      

  3.   

    不签名可以,cab包了么,路径对不
    tomcat只是个服务,和你用ocx没关系