引入TMSComm控件 (1)进入Delphi 编程环境下,在菜单项中选中Component/Import ActiveX选项,出现ActiveX控件导入窗口; (2)在其中选中Microsoft Comm CONTROL 6.0(Version 1.1),并按需要选定Palette pages、unit dir NAME、Search path值(一般取默认值),最后选择 INSTALL按钮进行安装。即可将MSComm控件引入到Delphi 中。 (3)在编程使用中,直接打开ActiveX控件,选取TMSComm控件,放在窗体上,设置其属性即可。其使用方法与Delphi其它控件相同. 编译添加后在控件ACTIVEX页找到了电话机式的控件符号,但是双击后,弹出如下错误提示:License information for TMSComm not found .You can not use contorl in design mode 注册TMsComm控件 1.将Mscomm.srg, Mscomm32.ocx,Mscomm32.dep三个文件复制到系统文件夹中C:\winnt\system32\。 2.用Windows下的注册工具regsvr32注册该OCX控件,点击“开始”->"运行",再在中填入(假设操作安装在C盘,WIN2000): Regsvr32 C:\winnt\system32\Mscomm32.ocx 3.在注册表中手工新建一个主键项:先在点击“开始”->"运行",再在中填入regedit命令打开注册表,找到HKEY_CLASSES_ROOT\Licenses,在其中添加主键 4250E830-6AC2-11cf-8ADB-00AA00C00905 并将内容设置为: kjljvjjjoquqmjjjvpqqkqmqykypoqjquoun
一、MSComm控件的主要属性及事件 (1)CommPort:设置或返回串行端口号,缺省值1。 (2)Setting:设置或返回串口通信参数,格式为“波特率,奇偶校验位,数据位,停止位”。例如:MSComm1.Setting:=′9600,n,8,1′ (3)PortOpen:打开或关闭串行端口,格式为:MSComm1.PortOpen:={True|False} (4)InBufferSize:设置或返回接收缓冲区的大小,缺省值为1024字节。 (5)InBufferCount:返回接收缓冲区内等待读取的字节数,可通过设置该属性为0来清空接收缓冲区。 (6)RThreshold:该属性为一阀值,它确定当接收缓冲区内的字节个数达到或超过该值后就产生代码为ComEvReceive的OnComm事件。 (7)SThreshold:该属性为一阀值,它确定当发送缓冲区内的字节个数少于该值后就产生代码为ComEvSend的OnComm事件。 (8)InputLen:设置或返回接收缓冲区内用Input读入的字节数,设置该属性为0表示Input读取整个缓冲区的内容。 (9)Input:从接收缓冲区读取一串字符。 (10)OutBufferSize:设置或返回发送缓冲区的大小,缺省值为512字节。 (11)OutBufferCount:返回发送缓冲区内等待发送的字节数,可通过设置该属性为0来清空缓冲区。 (12)OutPut:向发送缓冲区传送一串字符。 如果在通信过程中发生错误或事件,就会触发OnComm事件,并由CommEvent属性代码反映错误类型,在通信程序的设计中可根据该属性值来执行不同的操作。CommEvent属性值及其含义如下: (1)ComEvSend:值为1,发送缓冲区的内容少于SThreshold指定的值。 (2)ComEvReceive:值为2,接收缓冲区内字符数达到RThreshold指定的值。 (3)ComEvFrame:值为1004,硬件检测到帧错误。 (4)ComEvRxOver:值为1008,接收缓冲区溢出。 (5)ComEvTxFull:值为1010,发送缓冲区溢出。 (6)ComEvRxParity:值为1009,奇偶校验错误。 (7)ComEvEOF:值为7,接收数据中出现文件尾(ASCII码为26)字符
|