现代软件开发技术——ActiveX控件
第16章 ActiveX 控件

第十六章 ctiveX 控件
例16.1 在窗体上放置标签框、文本框、命令按钮、列表框以及一个状态栏。状态 栏有三部分:第一部分显示系统时间,第二部分显示鼠标当前指向控件的名称, 第三部分显示列表框中选中的字体个数。 说明:1)状态栏控件实际上是由一组窗格对象(Panel Object)构成的,即一个 控件数组。 2)状态栏、窗格对象的控件数组下标从1开始。 3)状态栏除显示文字外,还允许显示图片。 2、工具栏 是按钮对象的集合。 较重要属性: 1) Style - 用来确定工具栏按钮的外观和状态。 2) Image - 与ImageList控件共同使用,为按钮空间指明所用的图像。
第十六章 ActiveX 控件
表16.3 符号常量 tbDefault tbrCheck 值 0 1 style属性值及含义 说明 普通按钮。单击按钮时,按钮被按下,松开后复原 类似于复选框。单击一次鼠标呈“按下”状态,再次单击,按钮复原 一组按钮。某一时刻,只有一个按钮被按下,单击其他按钮时,被按下 的按钮才复原 tbrSeparator 3 分隔符。在两个按钮之间设置分隔。 位置标识。类似于分隔符,但可调整宽度 下拉按钮
Visual Basic 程序设计
— 主讲教师:惠丽峰
第十六章 ActiveX 控件
一、ActiveX控件简介 ActiveX控件简介 VB控件主要的三种类型:1) 标准控件 2) ActiveX控件 3) 可插入的对象 标准控件(内部控件):总出现在工具箱中,可以直接使用。 ActiveX控件:不在工具箱中,以单独的文件存在,文件的扩展名是.ocx 。 ActiveX控件是Visual Basic控件的扩充。在程序中加入 ActiveX控件后,它就成为开发和运行环境的一部分。 说明:学习版中所提供的控件较少,专业版和企业版提供的控件比较多。 可插入的对象:可插入到窗体上,能添加到工具箱中。 二、使用 ActiveX 控件 1、状态栏 一般用来表示系统的状态信息。
ActiveX控件的理解。

activex是Microsoft对于一系列策略性面向对象程序技术和工具的称呼,其中主要的技术是组件对象模型(COM)。
在有目录和其它支持的网络中,COM变成了分布式COM(DCOM)。
在创建包括ActiveX程序时,主要的工作就是组件,一个可以自足的在ActiveX网络(如今的网络主要包括Windows和Mac)中任意运行的程序。
这个组件就是ActiveX控件。
ActiveX 是Microsoft为抗衡SunMicrosystems的JAVA技术而提出的,此控件的功能和java applet功能类似。
如果您使用的是Windows操作系统,您或许会注意到一些以OCX结尾的文件。
OCX代表“对象链接与嵌入控件”(OLE),这个技术是Microsoft提出的程序技术,用于处理桌面文件的混合使用。
如今COM的概念已经取代OLE的一部分,Microsoft也使用ActiveX控件代表组件对象。
组件的一大优点就是可以被大多数应用程序再使用(这些应用程序称为组件容器)。
一个COM组件(ActiveX控件)可由不同语言的开发工具开发,包括C++和VisualBasic或PowerBuilder,甚至一些技术性语言如VBScript。
当前,ActiveX控件在Windows 95/NT和Macintosh中运行,Microsoft还准备支持UNIX 的ActiveX控件。
activex控件组件分类:1.自动化服务器:可以由其他应用程序编程驱动的组件。
自动化服务器至少包括一个,也许是多个供其他应用程序生成和连接的基于IDispatch的接口。
自动化服务器可以含有也可以没有用户界面(UI),这取决于服务器的特性和功能。
2.自动化控制器:那些使用和操纵自动化服务器的应用程序。
3.控件:ActiveX控件等价于以前的OLE控件或OCX。
一个典型的控件包括设计时和运行时的用户界面,唯一的IDispatch接口定义控件的方法和属性,唯一的IConnectionPoint 接口用于控件可引发的事件。
17 ActiveX

类型库
4
实地激活(in-place activation)
实地激活是指OLE对象的一种界面特性,具有实地激活特性的对象可以 直接在包容器窗口内部进行编辑 – 也被称作实地编辑(in-place editing) 或可视编辑 (visual editing) 界面处理 菜单合并、工具条、快捷键 消息发送、焦点控制 鼠标消息、键盘消息 窗口大小和位置调整
ISpecifyPropertyPages
7
接口选择
接口 IOleObject IOleInPlaceObject IOleInPlaceActiveObject IOleControl IDataObject IViewObject2 IDispatch IConnectionPointContainer IProvideClassInfo[2] ISpecifyPropertyPages IPersistStream[Init] IPersistStorage 或其它永久接口 功能与说明 如果控制要与包容器程序的站点对象进行通讯,那么必须实现此接口。 如果控制支持实地激活特性,那么必须实现此接口。 如果控制支持快捷键,或者访问包容器的环境属性,或者控制要求包容器 处理事件,那么必须实现此接口。 如果控制提供数据对象的特性,那么必须实现此接口。 如果控制在非实地激活的状态下也需要显示信息的话,那么必须实现此接 口。 如果控制有自定义的属性和方法的话,那么必须实现此接口。 如果控制对象支持一个或多个出接口,那么必须实现此接口。 如果控制对象要直接通过GetClassInfo 成员函数提供对象类型信息的话,那 么必须实现此接口。 如果控制对象支持属性页特性的话,那么必须实现此接口。 如果控制对象支持永久特性的话,那么至少实现一个永久接口。 8
第十二章ActiveX控件的使用和创建

12.1.1 ActiveX 和 IDispatch 接口
每个 COM 对象都有一些标准接口,例如, IUnknown 接口, 该接口用来询问是否找到了该组件所支持的其他接口。
每个接口支持一组特定的功能,例如,可以用一个接口来处 理控件的可视外观,一个接口来控制控件外观如何与插入该控 件的应用程序进行交互,一个接口来触发插入该控件应用程序 中的事件,等等。
调度接口
12.1.2 ActiveX 容器和服务器
任何可以嵌入另一对象的 ActiveX 对象都是 ActiveX 服务器, 而无论它是一个完整的应用程序或仅仅是一个 ActiveX 控件。
任何可以包含其他被嵌入 ActiveX 服务器的 ActiveX 对象都是 ActiveX 容器。 注意,不要把术语容器和服务器与上图中的客户程序混淆。客 户程序是指调用其嵌入对象的 IDispatch 接口的对象。容器和服 务器都相互调用对方的 IDispatch 接口,因此它们相互成为对方 的客户程序。
第十二章 ActiveX 控件的使用和创建
12.1 什么是 ActiveX 控件
在介绍ActiveX 控件之前有必要了解另外两个编程技术概念: ·OLE(Object Linked and Embeded) 对象连接嵌入是 Microsoft 基
于对象的技术。该技术用于跨越进程和机器边界的数据信息 和操作方法的共享。不过最初的OLE 仅仅允许把不同的应用 程序创建的文档组合成一个单一文档。 ·COM(Component Object Model) 组件对象模型是遵循OLE 基本 技术的对象模型。一个COM 对象是一个对象定义的实例,该 对象定义指定了该对象的数据和一个或多个作用于该对象的 接口执行方法。客户程序与COM 对象之间的相互作用只能通 过 COM 对象的接口实现。
什么是ActiveX插件?

什么是ActiveX插件?自从Microsoft公司于1996年推出ActiveX技术以来, ActiveX技术已得到了许多软件公司的支持和响应, 并纷纷在其产品中融入ActiveX技术。
而作为ActiveX技术之一的ActiveX控件也得到了迅猛的发展, 不但各大软件公司推出了不少ActiveX 控件, ActiveX控件更是得到一般开发者的喜爱。
那么, 什么是ActiveX控件呢? ActiveX控件是一个动态链接库, 是作为基于COM服务器进行操作的, 并且可以嵌入在包容器宿主应用程序中, ActiveX控件的前身就是OLE控件。
由于ActiveX控件与开发平台无关, 因此, 在一种编程语言上开发的ActiveX控件可以无须任何修改, 即可在另一种编程语言中使用, 其效果如同使用Windows通用控件一样。
如: 在VC++中开发的ActiveX控件, 不作任何修改即可应用于VB中。
由此可见, 通过使用ActiveX控件即可实现快速小型的组件重用、实现代码共享, 从而提升编程效率。
从上面亦可看出为何ActiveX控件如此广泛地受到开发者的欢迎。
因为ActiveX控件的可重用性, 加上Internet的普及, ActiveX控件得到了极大的发展, 目前, 从Internet上可以得到相当多的ActiveX控件, 而且品种繁多, 所完成的任务几乎无所不包。
对一般开发者来说, 只要有耐心, 都能从Internet上找到符合自己要求的ActiveX控件。
从Internet下载的ActiveX控件,或从其他途径得到的ActiveX控件,用户应该怎样做才能正确使用ActiveX控件或将其应用于自己的程序中呢?一般来说,一个外来ActiveX控件要在Windows中被正确使用,首先必必需将控件文件〔*.OCX〕复制到硬盘中,然后将其在Windows中注册,未在Windows中注册过的ActiveX控件是不能使用的。
第13章 ActiveX控件

第13章 ActiveX控件第一讲 ActiveX控件概述、ActiveX控件的创建和使用教学目标1. 了解 ActiveX控件的定义和功能。
2. 理解掌握 ActiveX控件的创建步骤。
3. 理解 ActiveX控件的使用方法。
教学过程预备知识一、ActiveX控件概述ActiveX控件可以简单地理解为能够实现特定功能的控件,例如可以浏览网页的控件、可以播放音频与视频的控件,可以播放Flash动画的控件等等。
ActiveX控件是一种可重用的软件组件,由编程语言开发,开发ActiveX控件可以使用各种编程语言,如C,C++,当然也包括Visual 环境的、、C#等编程语言。
ActiveX控件目前仅适用于Windows平台。
ActiveX控件一旦被开发出来,即和其开发时使用的编程语言无关。
ActiveX控件通常保存在ocx或dll文件中。
ActiveX控件不能单独运行,必须依赖某种应用程序,如Windows应用程序、Web应用程序等,这些程序称为ActiveX控件的宿主程序。
默认状态下,工具箱并不包含ActiveX控件,要使用ActiveX控件,需要向工具箱中添加,对不需要的ActiveX控件可以从工具箱移除,添加与移除ActiveX控件需要通过“自定义工具箱”对话框操作。
在工具箱中右键单击鼠标,选择弹出菜单中的“添加/移除项”命令,或选择工具菜单中的“添加/移除工具箱项”命令,打开“自定义工具箱”对话框。
二、创建ActiveX控件1. 创建ActiveX控件的步骤创建ActiveX控件的一般过程如下:①创建ActiveX控件项目。
②设计ActiveX控件界面。
③设计ActiveX控件代码。
④生成ActiveX控件。
2. 测试ActiveX控件由于ActiveX控件不是独立的应用程序,不能通过运行来调试,因为它们必须寄宿在容器中(例如放置在窗体这样的容器中)所以为了测试控件,必须提供一个能在其中运行该控件的测试项目。
什么是Activex控件
什么是Activex控件什么是Activex控件?经常上网的伙伴们会发现在打开某些网页后,会出现Activex控件被阻止的提示,那么,Activex控件是什么?如何解决这一现象?对此,店铺就为大家介绍一下什么是Activex控件。
欢迎大家前来阅读!!Activex控件是什么ActiveX控件,简单的说,它就是IE浏览器的插件,例如IE的Flash播放器就是一个ActiveX控件。
ActiveX存在明显的安全问题,因为它其实也是一种程序,如果你安装了某个ActiveX控件,那这个控件就有权限在你电脑上做很多事情,例如偷偷的监控你的网页浏览记录,在后台安装恶意程序,时不时在你电脑上产生弹窗,甚至窃取你的帐号密码等,正因为这样,正因为这样,IE内核的浏览器有时候会提示你不要加载这些控件。
Activex控件被阻止怎么办第一步:打开浏览器,然后选择菜单栏上“工具”选项,选择“工具”选项之后,选择下拉菜单的“Internet选项”。
第二步:打开Internet选项之后,切换到安全选项卡,然后选择安全选项卡下的自定义级别。
第三步:单击自定义级别之后打开安全设置窗口,将重置为一栏的安全级别设置为安全级-中,然后勾选下载已签名的Activex控件一栏的启用,再勾选运行Activex控件和插件一栏的启用,把该控件和插件给启用上来,部分显示不安全的选项,可以勾选为提示,然后单击确定按钮。
第四步:设置完成之后单击确定按钮,关闭浏览器,然后重新启用浏览器,这样就不会再有提示了。
注意事项:如果把浏览器的安全级别设置为高,不管你是否勾选运行Activex控件,浏览器都会自动改其为禁用,所以需要将安全级设置为中。
以上就是Activex控件被阻止怎么办的解决办法。
总结以上就是店铺为大家带来的Activex控件被阻止现象的解决方法,希望可以帮助到大家。
什么是Activex控件将本文的Word文档下载到电脑,方便收藏和打印推荐度:点击下载文档文档为doc格式。
ActiveX控件
•
一个完整的RS-232C接口有22根线,采用标准的25芯插头座(或者9芯插头座)。25芯和9芯的主 要信号线相同。以下的介绍是以25芯的RS-232C为例。 ①主要信号线定义: 2脚:发送数据TXD; 3脚:接收数据RXD; 4脚:请求发送RTS; 5脚:清除发送CTS; 6脚:数据设备就绪DSR;20脚:数据终端就绪DTR; 8脚:数据载波检测DCD; 1脚:保护地; 7脚:信号地。
• •
串口通信的标准的发展
•
串行通信接口标准经过使用和发展,目前已经有几种。但都是在 RS-232标准 的基础上经过改进而形成的。所以,以RS-232C为主来讨论。RS-323C标准 是美国EIA(电子工业联合会)与BELL等公司一起开发的1969年公布的通信协 议。它适合于数据传输速率在0~20000b/s范围内的通信。这个标准对串行通 信接口的有关问题,如信号线功能、电器特性都作了明确规定。由于通行设 备厂商都生产与RS-232C制式兼容的通信设备,因此,它作为一种标准,目 RS-232C 前已在微机通信接口中广泛采用。
串口通信的标准
• RS-232(ANSI/EIA-232标准)是IBM-PC及其兼容机上的串行连接标准。可 用于许多用途,比如连接鼠标、打印机或者Modem,同时也可以接工业仪器 仪表。用于驱动和连线的改进,实际应用中RS-232的传输长度或者速度常常 超过标准的值。RS-232只限于PC串口和设备间点对点的通信。RS-232串口 通信最远距离是50英尺。 编辑本段奇偶校验位 在串口通信中一种简单的检错方式。有四种检错方式:偶、奇、高和低。 当然没有校验位也是可以的。对于偶和奇校验的情况,串口会设置校验位 (数据位后面的一位),用一个值确保传输的数据有偶个或者奇个逻辑高位。 例如,如果数据是011,那么对于偶校验,校验位为0,保证逻辑高的位数是 偶数个。如果是奇校验,校验位位1,这样就有3个逻辑高位。高位和低位不 真正的检查数据,简单置位逻辑高或者逻辑低校验。这样使得接收设备能够 知道一个位的状态,有机会判断是否有噪声干扰了通信或者是否传输和接收 数据是否不同步。 RS-232(ANSI/EIA-232标准)是IBM-PC及其兼容机 上的串行连接标准。可用于许多用途,比如连接鼠标、打印机或者Modem, 同时也可以接工业仪器仪表。用于驱动和连线的改进,实际应用中RS-232的 传输长度或者速度常常超过标准的值。RS-232只限于PC串口和设备间点对 点的通信。
ActiveX控件解析
ActiveX控件解析ActiveX控件解析ActiveX是Microsoft对于一系列面向对象程序技术和工具的称呼,其中主要的技术是组件对象模型(COM)。
ActiveX控件是Microsoft为抗衡Sun的JAVA技术而提出的,功能和JAVA applet功能类似。
在Windows系统中,有一些以OCX结尾的文件。
OCX代表"对象链接与嵌入控件"(OLE),用于处理桌面文件的混合使用。
现在COM的概念已经取代OLE的一部分,Microsoft也使用ActiveX控件代表组件对象。
组件的最大优点就是可以被大多数应用程序再使用(这些应用程序称为组件容器)。
使用ActiveX控件可快速实现小型的组件重用、代码共享,从而提高编程效率,降低开发成本。
大家小时候都玩过七巧板和积木,用简单的形状就能构造出我们所能想象出的各种千奇百怪的物体,编程也是这样,组件就好比积木块,我们把组件按不同的方式组合起来,就能实现单个程序达不到的功能。
ActiveX控件运行在客户端。
通过它,我们可以获得客户端的一些信息,如IC卡的信息,客户端的验证等,同时,它也可以在我们浏览网页时,得到更多的功能体验,比如观看Flash动画、欣赏电影、歌曲等等。
但是ActiveX控件也有许多缺点,最大的缺点是客户端的部署很困难,如客户端不能正确下载,下载了以后不能正确执行,下载的时候需要设置IE的安全级别等等,这也是我行网银使用中客户咨询的热点。
另外一个缺点就是由于ActiveX控件可被黑客用来放毒,所以大多数安全类软件都会对其严防死守,这也给我行的控件安装带来了很大的影响。
为了帮助大家解决控件安装使用中的一些问题,我将从以下几方面对控件做一个简单的介绍。
•控件的工作原理•控件安装前的IE浏览器设置•控件的安装•控件的注册•控件的禁用•控件的免疫•控件的卸载和删除•控件的安全性控件的工作原理在介绍控件之前,有必要先来讲一下GUID。
第八章 ActiveX控件简介
第八章 ActiveX控件简介 ActiveX控件简介
添加属性页” 图8-16 “添加属性页”对话框 添加属性页
介绍” 图8-17 “介绍”对话框 介绍
第八章 ActiveX控件简介 ActiveX控件简介
第八章 ActiveX控件简介 ActiveX控件简介
8.4 加载 加载ActiveX控件的方法 控件的方法
建立ActiveX控件的基本过程如下: 控件的基本过程如下: 建立 控件的基本过程如下 控件的功能。 (1)确定 )确定ActiveX控件的功能。 控件的功能 控件的外观。 (2)确定 )确定ActiveX控件的外观。 控件的外观 (3)确定控件应具有的属性、方法和事件。 )确定控件应具有的属性、方法和事件。 控件工程, (4)新建一个 )新建一个Visual Basic的ActiveX控件工程, 的 控件工程 设计出控件的外观。 设计出控件的外观。 • (5)编写代码。 )编写代码。 (6)建立一个测试工程,测试控件。 )建立一个测试工程,测试控件。 • (7)将控件编译成OCX文件。 )将控件编译成 文件。 文件 • • • • •
8.1 ActiveX控件的基本概述 控件的基本概述
ActiveX 控件是 控件是ActiveX新技术之一,是OLE的第 个 新技术之一, 的第3个 新技术之一 的第 版本,它充分利用OLE和ActiveX技术的自定义控件,是 技术的自定义控件, 版本,它充分利用 和 技术的自定义控件 基于与应用程序无关的思想而设计的。它对最初OLE控 基于与应用程序无关的思想而设计的。它对最初 控 件的最大扩展是增加了Internet功能,用户可以将 功能, 件的最大扩展是增加了 功能 用户可以将ActiveX 控件加入到Internet主页上 同时,由于引入了DCOM 主页上。 控件加入到Internet主页上。同时,由于引入了DCOM 分布式组件功能),使其成了分布式组件, ),使其成了分布式组件 (分布式组件功能),使其成了分布式组件,用户可以通 过网络在本机调用远程机器上的ActiveX控件。即ActiveX 控件。 过网络在本机调用远程机器上的 控件 控件合并了VBX(Visual Basic控件的一个初期版本,目 控件的一个初期版本, 控件合并了 ( 控件的一个初期版本 前已很少应用)技术和ActiveX标准。从本质上讲, 标准。 前已很少应用)技术和 标准 从本质上讲, ActiveX 控件是一个 控件是一个ActiveX服务器,它能提供所有的 服务器, 服务器 OLE功能和服务,可视化编辑、拖放和 功能和服务, 自动化。 功能和服务 可视化编辑、拖放和OLE自动化。 自动化 ActiveX 控件需要在系统注册表中进行注册。ActiveX 控 控件需要在系统注册表中进行注册。 件可以用许多语言来开发,包括Visual Basic、Visual C++、 件可以用许多语言来开发,包括 、 、 Delphi、Borland C ++ Builder等。 、 等
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
ActiveX控件
一、简介
ActiveX是一个microsoft的术语,它指的是一 组包括控件、dll、active文档的组件,通常 以动态链接库的形式存在。 ActiveX控件的数据输入和函数功能的执行必 须通过容器。因此ActiveX控件必须具备如下 性能机制: 1、属性和方法 ActiveX控件必须提供属性的名称、方法的名 称及参数,以便容器可以存取和改变ActiveX 控件的属性参数。
MSComm控件的作用:
MSComm通信控件提供了一系列标准通信命 令的接口,它允许建立串口连接,可以连接 到其他通信设备(如Modem)。 还可以发送命令、进行数据交换以及监视和 响应在通信过程中可能发生的各种错误和事 件,从而可以用它创建全双工 、事件驱动的 、高效实用的通信程序。
二、MSComm Active控件使用方法
二、MSComm Active控件使用方法
2.使用Mscomm控件
通信事件包含了下面的设置: 1 发送缓冲区中的字符数比 Sthreshold 值低 ComEvReceive 2 接收到了Rthreshold个字符。 持续产生该事件,直到使用了Input属性删除了接收 缓冲区中的数据 ComEvCTS 3 CTS(Clear To Send)线改变 ComEvDSR 4 DSR(Data Set Ready)线改 变。当DSR从1到0改变时,该事件发生
二、MSComm Active控件使用方法
2.使用Mscomm控件
Error消息(MSComm控件)下表列出了MSComm 控件可捕获的错误消息: ComPortInvalid 8002 无效的端口号 8003 属性只在运行时有效 8004 属性在运行时是只读的
二、MSComm Active控件使用方法
二、MSComm Active控件使用方法
2.使用Mscomm控件
CommEvent属性为通信事件或错误返回下列值之一 。在该控件的对象库中也可以找到这些常量。 ComEventBreak 1001 收到了断开信号 ComEventCTSTO 1002 Clear To Send Timeout。在发送字符时,在系统指定的事件内, CTS(Clear To Send)线是低电平。 ComEventDSRTO 1003 Data Set Ready Timeout。在发送字符时,在系统指定的事件内, DSR(Data Set Ready)线是低电平
二、MSComm Active控件使用方法
3.例程
(5)串口数据读写 计算机发送和接收数据时习惯用字符串形式。 MSDN中查阅VARIANT类型,可以用BSTR表示字 符串,但所有的BSTR都包含宽字符,而只有 Windows NT支持宽字符,Windows 9X并不支持。 所以要完成一个适应各平台的串口应用程序必须解 决这个问题。使用CByteArray即可解决之。
二、MSComm Active控件使用方法
3.例程
(4)串口初始化: m_MSComm.SetSettings("9600,n,8,1"); //波特率9600无检验位,8个数据位,1个停止位 if(!m_MSComm.GetPortOpen())//如果串口没有打开则 打开 m_MSComm.SetPortOpen(TRUE);//打开串口 else{ m_MSComm.SetOutBufferCount(0); AfxMessageBox("Open The Serial Port 1 Failure!");}
1.串口通信基础知识
一般悦来,计算机都有一个或多个串行端口, 它们依次为com1、Com2、…,这些串口还提 供了外部设备与计算机进行数据传输和通信的 通道。
这些串口在CPU和外设之间充当解释器的角色 。当字符数据从CPU发送给外设时,这些字符 数据将被转换成串行比特流数据;当接收数据 时,比特流数据被转换为字符数据传递给CPU 。
二、MSComm Active控件使用方法
3.例程
(5)串口数据读写 MSComm 类的读写函数比较简单:GetInput()和 SetOutput()。 读函数原形为VARIANT GetInput() 写函数原型为void SetOutput(const VARIANT newValue) 均使用VARIANT类型。
2.使用Mscomm控件
ComPortAleadyOpen 8005 端口已经打开 8006 设备标识符无效或不支持 8007 不支持设备的波特率 8008 指定的字节大小无效 8009 缺省参数错误 8010 硬件不可用(被其他设备锁住) 8011 函数不能分配队列
二、MSComm Active控件使用方法
二、MSComm Active控件使用方法
2.使用Mscomm控件
ComEventRxOver 1008 接收缓冲区溢出。在接 收缓冲区中没有空间 ComEventRxParity 1009 奇偶校验错。硬件检测 到奇偶校验错误7 ComEventTxFull 1010 发送缓冲区满。在对发送 字符排队时,发送缓冲区满 ComEventDCB 1011 检取端口DCB(Device Control Blick)时发生了没有预料到的错误 short GetCommEvent(); void SetCommEvent(short nNewValue);
二、MSComm Active控件使用方法
(5)串口数据读写 发送二进制数据:void CTest_mscommDlg::OnSend() {int i,Count;CString m_SendData; m_SendData="Hello!"; Count=m_SendData.GetLength(); CByteArray m_Array;m_Array.RemoveAll(); m_Array.SetSize(Count); for(i=0;i m_Array.SetAt(i,m_SendData[i]); m_MSComm.SetOutput(COleVariant(m_Array));}
一、简介
2、事件通知容器
在ActiveX控件发生的事件,如属性参数的改 变、用户的单击、双击动作等。
3、存储容器
由这项机制通知ActiveX控件存储和提取有关 信息数据。ActiveX控件只需在windows的 registry数据库中注册后,就可以象其他 window应用程序一样发挥各自功能。
二、MSComm Active控件使用方法
3.例程
二、MSComm Active控件使用方法
3.例程
(4)串口初始化: m_MSComm.SetInBufferSize(1024); //接收缓冲区 m_MSComm.SetOutBufferSize(1024);//发送缓冲区 m_MSComm.SetInputLen(0);//设置当前接收区数据长 度为0,表示全部读取 m_MSComm.SetInputMode(1);//以二进制方式读写数 据 m_MSComm.SetRThreshold(1);//接收缓冲区有1个及 1个以上字符时,将引发接收数据的OnComm事件
二、MSComm Active控件使用方法
2.使用Mscomm控件
PortOpen:设置或返回通信端口的状态。也可以打 开和关闭端口 void SetPortOpen(BOOL bNewValue); BOOL GetPortOpen(); Input :返回和删除接收缓冲区中的字符 VARIANT GetInput(); Output:将字符串写入发送缓冲区 void SetOutput(const VARIANT & newValue);
二、MSComm Active控件使用方法
2.使用Mscomm控件
ComEventFrame 1004 数据帧错误。硬件检测 到一个数据帧错误 ComEventOverrun 1006 端口溢出。硬件中的字 符尚未读,下一个字符又到达,并且丢失 ComEventCDTO 1007 Carrier Detect Time。 在发送字符时,在系统指定的事件内,CD(Carrier Detect)线是低电平。CD也称为RLSD(Receive Line Singal Detect,接收线信号检测)
二、MSComm Active控件使用方法
3.例程
(1)建立MFC工程 (2)将控件加载到工程中: 打开“Project->Add To Project->Components and Controls->Registered Activex Controls”,然后选择 控件:Microsoft Communication Control,version 6.0插入到当前的工程中。MSComm 控件拖至你的 应用对话框中就OK了 (3)定义串口对象: CMSComm m_MSComm;
二、MSComm Active控件使用方法
2.使用Mscomm控件
在开始使用MSComm控件之前。需要先了解其属性 、事件和错误。 CommPort:设置或返回通信端口号 void SetCommPort(short nNewValue); short GetCommPort(); Settings:以字符串的形式设置或返回波特率、奇 偶校验、数据位和停止位 void SetSettings(LPCTSTR lpszNewValue); CString GetSettings();
二、MSComm Active控件使用方法
1.串口通信基础知识
在操作系统方面,Windows用通信驱动程序( COMM.DRV)调用API函数发送和接收数据, 当用通信控件或声明调用API函数时,它们由 COMM. DRV解释并传递给设备驱动程序。
作为一个程序员,要编写通信程序。只需知道 通信控件提供给Windows通信API函数的接口 即可。即只需设定和监视通信控件的属性和事 件即可。