使用C#创建ActiveX控件步骤详解
需积分: 0 120 浏览量
更新于2024-09-10
1
收藏 761KB DOCX 举报
"这篇内容是关于使用C#在Visual Studio 2008环境下开发ActiveX控件的个人描述,主要涉及的操作步骤包括创建Windows窗体控件库项目,设置程序集为COM可见,为COM互操作注册,以及编写一个简单的用户控件UcCard,该控件具有读卡功能。"
在C#中开发ActiveX控件,可以将.NET Framework中的类暴露给不使用.NET技术的环境,如旧版的网页或VBA应用。以下是一些关键知识点:
1. **ActiveX控件**:ActiveX是微软推出的一种组件技术,允许开发者创建可嵌入到其他应用程序或网页中的小应用程序。这些控件可以通过OLE(对象链接和嵌入)进行交互,提供跨平台的兼容性。
2. **开发环境**:在Windows 7操作系统上,使用Visual Studio 2008作为开发工具,并且需要.NET Framework 2.0支持C#编程。
3. **创建项目**:首先,你需要新建一个"Windows窗体控件库"项目,这里命名为WfclCard。这个项目会包含你需要创建的ActiveX控件。
4. **使程序集COM可见**:在项目的属性设置中,勾选"使程序集COM可见",这使得非.NET环境的应用程序能够识别并使用这个控件。
5. **为COM互操作注册**:在生成选项中,勾选"为COM互操作注册",这一操作会自动为控件生成必要的注册信息,以便于在其他非托管环境中使用。
6. **用户控件UcCard**:创建名为UcCard的用户控件,这是ActiveX控件的核心。在UcCard.cs文件中,定义控件的属性、方法和事件。例如,这里有一个ReadCard方法,用于读取卡片信息。
7. **Guid定义**:在用户控件的定义中,使用`[Guid("e7aff51e-2a91-4174-b7ab-7e6ee0129e80")]`指定了一个全局唯一标识符(GUID),这个ID是ActiveX控件在COM世界中的身份。
8. **Interop服务**:C#通过.NET Framework的Interop服务与COM组件进行交互,使得.NET代码可以调用COM接口,反之亦然。
9. **读卡功能**:示例中的ReadCard方法演示了如何从卡片中读取信息,可能涉及与硬件设备(如智能卡读卡器)的通信,这里使用了CpuCardSDK的函数`ZGH_ReadRootEGS002File`来读取数据。
10. **数据处理**:读取到的原始数据是字节流,需要进一步处理(如解码、分割)才能得到有意义的信息。在这个例子中,通过`Encoding.Default.GetString()`将字节流转换为字符串,然后用`Split('|')`来拆分信息。
开发C# ActiveX控件涉及到的知识点包括.NET Framework的COM互操作、用户控件设计、以及与硬件设备的通信等,这些技术使得开发者能构建跨平台、跨语言的组件解决方案。
655 浏览量
1001 浏览量
119 浏览量
169 浏览量
2015-01-20 上传
458 浏览量
130 浏览量
383 浏览量
lijun_xiao2009
- 粉丝: 217
- 资源: 47
最新资源
- 《Velocity1.4 模板使用指南中文版》
- 一些vfp实用代码如登录界面代码 打印代码
- ALV编程手册(An Easy Reference for ALV GRID CONTROL.)
- SVN操作入门指南.pdf
- 谭浩强_C++程序员设计_pdf(将各章整合都一起了)
- OpenDoc-CruiseControl.pdf
- DataWindow .net 汉化版 电子书
- 持续集成配置.pdf
- MT6228手机基带IC PDF档
- Const的所有用法by Dan Saks
- 深入浅出Struts 2.pdf
- AN INTRODUCTION TO STOCHASTIC
- web.xml详细配置说明
- javaweb ATA认证题库
- 整合Flex和Java--配置篇
- svn使用说明的PPT