MsComm控件在Delphi中的安装!
来源:互联网 发布:佳能打印软件下载 编辑:程序博客网 时间:2024/04/30 09:06
-----------------------------------------------------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------------------------------------------------
一、MsComm控件的安装使用
首先在VB安装目录下找到下列三个文件:
Mscomm.reg, Mscomm32.ocx, Mscomm32.dep , (这三个文件在我的资源中可以找到)
把这三个文件拷贝到Windows的system目录下(注意WinNT下是System32)。然后用Windows下的注册工具regsvr32注册该OCX控件,例如:
Regsvr32 … system目录/Mscomm32.ocx .
注册成功后用记事本打开Mscomm.reg,可以看到类似下面的内容:
[HKEY_CLASSES_ROOT/Licenses/4250E830-6AC2-11cf-8ADB-00AA00C00905]
@ = "kjljvjjjoquqmjjjvpqqkqmqykypoqjquoun",为了能正确使用该控件,需要修改注册表的信息,在注册表的在HKEY_CLASSES_ROOT/Licenses下建一主键:
4250E830-6AC2-11cf-8ADB-00AA00C00905,主键的内容为
kjljvjjjoquqmjjjvpqqkqmqykypoqjquoun.
至此已经完成了控件的系统注册工作,在ActiveX控件页上可以看到一个电话为图标的控件,这就是MSComm控件。这样就可以象在VB中一样方便得使用MSComm控件了。
————————————————————————————————————————————
————————————————————————————————————————————
二、利用Microsoft公司提供的通讯控件
利用Microsoft公司提供的通讯控件(Mscomm.vbx,用于16位通讯程序、Mscomm32.ocx用于开发32位通讯程序)可方便实现串口通讯
1、 常用属性 CommPort:设置或返回串行端口号,缺省为1。
Setting:设置或返回串行端的波特率、奇偶校验位、 数据位数、停止位。缺省值为"9600,N,8,1"。
PortOpen:设置它为True则打开端口,设置它为False则关闭端口。
InBufferSize:设置或返回接收缓冲区的大小,缺省为1024 字 节。
InBufferCount:返回接收缓冲区内的等代读取的字节个数,设属性为0清除接收缓冲区。
OutBufferSize:设置或返回发送缓冲区,缺省为512字节。
OutBufferCounter:返回发送缓冲区内等待发送的字符数,可用0来清空缓冲区。
Output:向发送缓冲区传送数据
RThreshold: 该属性确定当接收缓冲区内字节个数达或超过该值后就产生代码为ComEventReceive
的OnComm事件,设置位0,则不产生OnComm事件。
CommEvent:有通讯错误或事件发生时产生OnComm事件,CommEvent事件的值可以用来确定引
发OnComm事件的具体的错误或事件常用的有以下几种(更详细的资料可参考MSComm控件帮助文件)
ComEventbreak:接受到中断信号
ComEventFrame:硬件检测到帧错误。
ComEventRxOver:接收缓冲区溢出。
ComEventTxFull:发送缓冲区溢出。
ComEventReceive:接受到规定的字符数。
InputLen:设置或返回接收缓冲区内用Input读入的个数。若取0,则读取整个缓冲区的内容。
Input:返回并删除接受缓冲区的数据。
2、 示例:
下面举一接收程序示例:制作一通讯接收窗口,选择菜单Controls→OLE→Insert Control→Microsoft Communications Control,
在窗口中出现通信控件图标单击鼠标右键,选择OCX Properties设置常用属性,也可在程序中进行设置窗口的Open事件程序如下:
ole_1.object.CommPort=2
ole_1.object.Settings="9600,N,8,1"
ole_1.object.PortOpen=ture
ole_1.object.Rthreshold=10
ole_1.object..Inputlen=0 . .
通信控件的oncomm事件的程序如下
choose case ole_1.object.CommEvent
case comEventBreak //接收到中断信号
case comEventCDTO //处理CD超时
. . .
case comEvReceive sle_1.text=ole_1.object.Input
. .
end choose
以上是一个基本的例子,在实际应用过程中应根据不同的情况进行不同的设计,如波特率、帧格式等。
总之,利用以上方法可以方便的在PowerBuilder中进行串口通讯,并对接收的数据利用PowerBuilder进行数据处理。
- MsComm控件在Delphi中的安装!
- Delphi中MsComm控件的安装使用
- MSCOMM控件在VC2010中的使用
- 金手指Delphi中MsComm控件的安装使用
- DevExpress v28 控件在 Delphi 中的安装
- win10 安装MSCOMM控件
- 如何在安装部署时实现注册MSComm控件
- 如何在安装部署时实现注册MSComm控件
- Delphi+MSComm控件串口收发程序
- VS2010如何安装MSComm控件
- VS2010如何安装MSComm控件
- 在Delphi中使用串口控件MSComm的0字符接收例程祥解
- MSComm的串口通信程序,在没有安装Vc的机器上没有办法运行 MSComm控件注册
- [MSComm]MSComm控件注册以便在LabVIEW中使用
- MSComm控件在串口编程中使用
- MSComm控件在串口编程中使用
- 在VS2005中使用mscomm控件
- VC++ 6.0之MSComm控件安装、使用
- Query接口学习笔记
- Javascript之getAttribute()方法 setAttribute()方法
- Compact 命令压缩和解压缩文件
- 也谈Google春运交通图的开发
- 让Linux风暴来的更猛烈些吧!
- MsComm控件在Delphi中的安装!
- Struts 2请求处理流程
- struts2启动tomcat的错误
- 在BREW中打造自己的GUI(4)-IGStatic的实现
- 牢骚
- SMTP协议原始命令码和工作原理
- 比尔盖茨给刚毕业程序员的10点忠告
- (忽然觉得,我的这个博客更像是记录我生活的日常博客,而不是技术,这与CSDN的技术风格,有点相悖,嘿嘿)
- 不做人生规划,你离挨饿只有三天(转)