1、新建一个C#类库项目:MyCom;
2、修改 Properties 目录下的 AssemblyInfo.cs(程序集文件) 中的 ComVisible 属性为 true;
3、项目->属性->生成,勾选 “为COM互操作注册” ;
4、项目->属性->签名,勾选 “为程序集签名” ,在下面的 “选择强名称秘钥文件” 下选择新建,在弹出的 窗口中的 “秘钥文件名称” 添加一个名称, 然后勾掉 “使用密码保护秘钥文件” ;
5、然后开始创建类。在创建的类上面要加上两个属性:Guid 和 ProgId。Guid可以通过: 工具->创建GUID,新建一个Guid,如下图。ProgId的值是: 命名空间名字.类名。
注意:要想使用 Guid 和 ProgId,必须要引用他们的命名空间:using System.Runtime.InteropServices;
6、然后编译,注册生成的dll文件,步骤如下:
先打开命令提示符:工具->Visual Studio命令提示,然后使用 regasm命令加dll的全路径名 注册dll为COM组件:
7、注册成功后,编写JavaScript脚本调用该COM组件:
其中<object>标签中的 classid 就是 类名上面的 Guid属性 的值;
new ActiveXObject("MyCom.Class1") 中的参数 "MyCom.Class1" 就是 类名上面的 ProgId 属性的值;
8、运行结果为:
注意:COM组件也就是ActiveX控件,只能在IE浏览器上使用,别的浏览器用不了。