javascript中代码如下:
<script>
var vCom;
try  
{
    vCom= new ActiveXObject("Com.ComClass");
}
catch (e)
{
vCom == null;
}
</script>
ActiveX Dll 文件放在本地,想在网页中使用javascript调用DLL中的代码创建对象。(测试时使用的IIS)
谁帮忙写个demo吧,我搞了两天了,创建不成功,有次在别人机子上成功了,不知什么原因
我做测试的Dll很简单,按照VC2003向导生成的。只要能使javascript成功创建ActiveX里的对象就行。
不管用MFC 还是ATL  我折腾的快疯了。。
留个邮箱:[email protected]
能调用马上结贴
PS:我注册了控件了regsvr32...

解决方案 »

  1.   

    呃,补充个情况。。
    不把HTML文件放到IIS里,直接运行就可以成功注册
      

  2.   

    这样加载试下,先要注册成功
    <object id="TestA" classid="clsid:95062920-C5DD-4AEB-B0B2-85E02185DFE4" style="width:100px; height:100px;"></object>
      

  3.   

    这个试过了,跟上面是一样的,我就怀疑是不是我在创建ActiveX控件的时候出什么错了,能麻烦给我个demo测试下么?里面不需要什么功能,只要有个类就行
      

  4.   

    调用成功的条件很简单:
    1、组件实现了IDispatch
    2、组件可创建
    3、组件已注册
    检查一下哪个条件不满足。
      

  5.   

    麻烦问一下,怎么样才算组件实现了IDispatch呢?
    我用MFC创建ActiveX,添加新类,它的基类是CCmdTarget,自动化按类型ID创建。然后怎么做呢?
      

  6.   

    MFC创建的ActiveX完全满足三点要求,但它是真正的ActiveX控件,真正的控件除了创建之外,还需要在容器中激活,而 new ActiveXObject 只是创建组件(所以创建能够成功),但没有任何容器功能,也无法激活。不要被ActiveXObject这个名称迷惑了,虽然用到了 ActiveX 的名称,但跟 ActiveX 不沾边。你要做的应该是创建普通的COM组件,而不是ActiveX控件。
      

  7.   

    呃 应该是我说错了。更正下
    创建过程如下:选择MFC-->MFC DLL,附加功能:自动化
    在工程中增加一个MFC类  继承自CCmdTarget
      

  8.   

    呃 问题解决,原来是安全性问题,我将localhost加到网站安全区域就可以正常创建了。。
    结贴,同时谢谢帮助我的热心朋友。。