我自己写了一个控件(ActiveX),在自己的机器中用html调用一切正常,但在别人的机器中可以注册,也可以显示,就是不正常工作!换了一台也不行!给我的感觉好象是属性没有设进去,各位大侠快来帮忙啊!分数给第一个正确回答者!

解决方案 »

  1.   

    你的机器上有你控件用到的其它Com组件,而其它机器没有.
    这个问题比较麻烦,你需要考虑你用到了什么特殊的非MFC通用组件或其它ActiveX.
      

  2.   

    如果我用到其它的COM组件而这台机器又没有,他会注册成功吗?
    我好象没用到什么特殊的东西!真是奇怪了!
      

  3.   

    我想请问,你究竟在html中是怎么调用的啊
    我用object和javascript,就是老提示说对象不支持该方法
    我都快疯了,在activex test container里面明明该方法可以调用的
      

  4.   

    我没试过javascript,我的Active控件与html只是通过属性来交互!现在的问题是在我的机器上可以通过html来设置我的Active控件的属性,但是换了另一台机器注册成功后发现不能设置属性了!!
      

  5.   

    是用mfc写的吗?那样的话,如果别人机子没装vc就很可能出错。不过装了就没事了。
    还有你最好把他卸载掉,在重新注册一次,放到一个新的网页上试试,以前在vc里使用
    碰到过类似问题,重弄了之后就没事了。祝你好运!
      

  6.   

    多谢楼上,我用的ATL!还没有弄明白为什么不行!
      

  7.   

    http://expert.csdn.net/Expert/topic/2307/2307338.xml?temp=.6305963
    也许有用
      

  8.   

    多谢楼上的兄弟,我的问题和他的不一样,他是因为不同的机器有的注册了,有的没注册所以情况不一样,可我的是注册了也不能用!唉!对ATL失去信心了!
      

  9.   

    兄弟们!解决了!!!不是我的控件的问题,是FrontPage在建网页时加了DATA:application/x-oleobject;BASE64,xgIpS7GAy0aEp55bUc5kSwADAAAhLwAAax8AAAgAAAAAAAgAAAAAAA==这么一段!全部的代码在下面:
    <object classid="clsid:4B2902C6-80B1-46CB-84A7-9E5B51CE644B" id="sw1" data="DATA:application/x-oleobject;BASE64,xgIpS7GAy0aEp55bUc5kSwADAAAhLwAAax8AAAgAAAAAAAgAAAAAAA==
    " width="839" height="605">
      <param name="_cx" value="22199">
      <param name="_cy" value="16007">
      <param name="Caption" value="d:\ftpdir\map.jpg">
      <param name="Text" value="192.168.100.92">
    </object>在另一台机器上再建一个网页时没有这一段,于……所有的机器都可以跑了!!我对html语法不了解,不知这是什么东东!再一次感谢大家这几天的关注!!  结贴!