关于C#开发OCX组件的说明
2016-10-18 17:32
435 查看
1、 什么是OCX?
OCX是指用C++、C#或者VB开发的COM组件,对外开放的接口可提供和html进行调用,解决html调用本地电脑资源或者第三方集成的问题。应用场景包括银行、视频播放(用flash也能解决相关问题)等。
2、 OCX、COM的区别以及C++、C#和VB开发的组件的区别?
对于HTML调用的组件来说,OCX和COM没有任何区别,用C++和VB开发可以生成OCX或COM组件,但是用C#只能生成COM组件。
C#是微软的产物,所以其生成的COM组件目前只能提供给IE使用;
OCX同样支持IE,但是在也可以开发出非IE内核使用;
3、 C#开发COM组件需要选择的项目?
对于windows开发而言,实质上开发COM就是开发DLL,选择C#开发基本上都是使用Virual Studio(我使用的是VS2008,.NET版本是3.5),新建项目选择类库即可。
4、 开发结束后对外开放的接口如何提供给HTML使用?
想要使DLL能为COM组件在程序里需要对AssemblyInfo.cs(Android开发同事可以将其理解为Android里面的AndroidManifest.xml)文件添加[assembly: Guid("151e5c23-d121-4f26-a035-7a43f6d775b0")],表示此项目向COM公开,GUID用于类型库;
在开放接口类里面实现IObjectSafety接口(实现代码不用改,网上都是一样的,直接拿过来就行);
最后在你的开放接口类外部添加自定义GUID,这是最关键的一步,[GuidAttribute("1A585C4D-3371-48dc-AF8A-AFFECC1B0967")],这个GUID需要自己生成,HTML的开发者在集成安装你提供的COM组件后需要知道你的GUID,才能正常使用你提供的接口;
HTML里面先加载COM组件(注意:这里对于HTML而言不关注OCX或者COM里,调用方法一样),<objectid="YouOcx"classid="clsid:FD05F7D5-BA6A-4d6a-9F79-DFADB79BA2B0"></object>, 这里的classid就是你开发COM组件所 使用的GUID,然后在html里面就可以使用该对象了,varocx = document.getElementById("YouOcx ");
ocx.XXX();,这里的XXX()就是你COM所提供给HTML调用的方法。
OCX是指用C++、C#或者VB开发的COM组件,对外开放的接口可提供和html进行调用,解决html调用本地电脑资源或者第三方集成的问题。应用场景包括银行、视频播放(用flash也能解决相关问题)等。
2、 OCX、COM的区别以及C++、C#和VB开发的组件的区别?
对于HTML调用的组件来说,OCX和COM没有任何区别,用C++和VB开发可以生成OCX或COM组件,但是用C#只能生成COM组件。
C#是微软的产物,所以其生成的COM组件目前只能提供给IE使用;
OCX同样支持IE,但是在也可以开发出非IE内核使用;
3、 C#开发COM组件需要选择的项目?
对于windows开发而言,实质上开发COM就是开发DLL,选择C#开发基本上都是使用Virual Studio(我使用的是VS2008,.NET版本是3.5),新建项目选择类库即可。
4、 开发结束后对外开放的接口如何提供给HTML使用?
想要使DLL能为COM组件在程序里需要对AssemblyInfo.cs(Android开发同事可以将其理解为Android里面的AndroidManifest.xml)文件添加[assembly: Guid("151e5c23-d121-4f26-a035-7a43f6d775b0")],表示此项目向COM公开,GUID用于类型库;
在开放接口类里面实现IObjectSafety接口(实现代码不用改,网上都是一样的,直接拿过来就行);
最后在你的开放接口类外部添加自定义GUID,这是最关键的一步,[GuidAttribute("1A585C4D-3371-48dc-AF8A-AFFECC1B0967")],这个GUID需要自己生成,HTML的开发者在集成安装你提供的COM组件后需要知道你的GUID,才能正常使用你提供的接口;
HTML里面先加载COM组件(注意:这里对于HTML而言不关注OCX或者COM里,调用方法一样),<objectid="YouOcx"classid="clsid:FD05F7D5-BA6A-4d6a-9F79-DFADB79BA2B0"></object>, 这里的classid就是你开发COM组件所 使用的GUID,然后在html里面就可以使用该对象了,varocx = document.getElementById("YouOcx ");
ocx.XXX();,这里的XXX()就是你COM所提供给HTML调用的方法。
相关文章推荐
- 关于VS.Net2005中串口操作说明(C#)(SerialPort组件)
- ASP.NET,C#.NET 通用权限系统组件源码使用说明,程序开发的尚方宝剑,程序架构标准参考,程序开发必备知识
- 关于在组件GIS开发中使用Python的一点补充说明
- [转]关于C#开发GIS应用简明教程的说明
- 关于C#微信公众号开发的前言说明
- 关于VS.Net2005中串口操作说明(C#)(SerialPort组件) -ZT
- 关于VS.Net2005中串口操作说明(C#)(SerialPort组件) (转帖)
- 关于VS.Net2005中串口操作说明(C#)(SerialPort组件)
- ASP.NET,C#.NET 通用权限系统组件源码使用说明,程序开发的尚方宝剑,程序架构标准参考,程序开发必备知识
- 关于《用C#编写ActiveX控件》的几点说明
- 使用C#开发COM+组件
- 基于组件技术的C#开发 ---聚集
- 使用C#开发COM+组件
- 基于组件技术的C#开发 --委托
- Csdn Blog 开发团队致广大网友的一封信-“关于评论数不更新等若干问题的说明”
- 基于组件技术的C#开发 ---组件分类系统 ---角色分类系统
- 关于C#WINDOWS开发-复杂控件程序
- [转]关于安装配置XNA开发环境的详细说明
- 基于组件技术的C#开发 ---深度聚集
- 使用C#开发COM+组件