我写了一个activx,就写了简单的几个方法.当我在html里写这样的
在iis网站跟目录下有两个文件,一个是 刚刚写好的activeX控件.一个html页面,页面如下1, 当我用这样的方式时,无法加载.但是提示下载安装.但是调用 acvx控件的方法无效,也就是加载失败.ie加载项也没有
<OBJECT ID="ac1" CLASSID="CLSID: guid1" codebase="AAct1.ocx:">  //guid1 是我随机生成的一个.</OBJECT>苦于无解,寻找其他方法
2 ,我下载了一个 Microsoft ActiveX Control Pad .居然在下拉列表里能找我刚用vs写的控件,我疑惑,这个工具为什么能看到?我还没有注册呢.
这样是能调用方法的.ie加载项目也存在.<OBJECT ID="ac1" WIDTH=100 HEIGHT=51
 CLASSID="CLSID:0980B12C-99E2-4035-96CD-416B1BEFA229"> //这个guid是生成出来的吧.
    <PARAM NAME="_Version" VALUE="65536">
    <PARAM NAME="_ExtentX" VALUE="2646">
    <PARAM NAME="_ExtentY" VALUE="1323">
    <PARAM NAME="_StockProps" VALUE="2">
</OBJECT>
疑惑: 
为什么第二种方法可以?他什么时候进行注册的? 为什么没有提示下载呢? 那两个guid该怎么解释? 注册的还有个方法是用regsrv32,我又郁闷了,用regsrv32注册是到哪去了?却无法再ie里看到...请高手指教...

解决方案 »

  1.   

    你vs编译的时候,就会自动帮你regsvr32注册...可以查看一下注册表中是否有注册信息...
      

  2.   

    那是IDE在你编译的时候帮你注册的。
      

  3.   

    0980B12C-99E2-4035-96CD-416B1BEFA229 是你ocx的guid.如果你要在网页里面安装的话。有两个方法:一打成cab包.包里面自带inf文件进行安装。另外就是打成exe,exe安装的时候注册你的ocx.另外,调用的时候需要用codebase指定你的cab(或exe)的路径,最好用绝对URL路径.