最近刚开发了个activeX控件,下面是我的一些简单总结。class="Apple-converted-space">
1. 先创建一个类库项目,在AssemblyInfo.cs设置 [assembly: ComVisible(true)]
,意思是使此程序集中的类型对COM组件可见。使用命名空间using System.Runtime.InteropServices;设置[assembly: System.Security.AllowPartiallyTrustedCallers()],保证程序集的可访问。
2.在自定义的类上用vs自带工具生成新的GUID,放在类前,如[Guid("xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx")]。同时在生成标签页勾选“为Com互操作注册”,编译生成,在注册表下可以找到对应注册码。注意:win7下用管理员权限打开IDE。
3.在web页面上使用<object id="id" classid="clsid:{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}" ></object>获取activeX控件,并调用方法成功。注意:此处未对控件添加证书,所以要想访问到控件,需设置浏览器安全信息,这个就不多说了。
相关参考链接:
http://blog.sina.com.cn/s/blog_458983150100esga.html
http://blog.163.com/tom19900920@126/blog/static/2349868720121195250522/
http://xu.xue.yi.blog.163.com/blog/static/9573824820101114111941871/
http://www.woxihuan.com/139766224/1336830428086975.shtml