📄 mscomm控件使用详解-.htm
字号:
<BR><BR>PortOpen 设置并返回通讯端口的状态。也可以打开和关闭端口。 <BR><BR>Input
从接收缓冲区返回和删除字符。 <BR><BR>Output 向传输缓冲区写一个字符串。 <BR><BR>下面分别描述:
<BR><BR><A><STRONG>CommPort属性</STRONG></A>
设置并返回通讯端口号。<BR><BR> 语法 object.CommPort[value ] (value
一整型值,说明端口号。) <BR><BR> 说明 在设计时,value 可以设置成从 1 到 16 的任何数(缺省值为
1)。但是如果用 PortOpen 属性打开一个并不存在的端口时,MSComm 控件会产生错误 68(设备无效)。
<BR>注意:必须在打开端口之前设置 CommPort 属性。 <BR><BR><A><STRONG>RThreshold
属性 </STRONG></A><BR><BR> 在 MSComm 控件设置 CommEvent 属性为
comEvReceive 并产生 OnComm 之前,设置并返回的要接收的字符数。 <BR><BR> 语法
object.Rthreshold [ = value ](value 整型表达式,说明在产生 OnComm
事件之前要接收的字符数。 ) <BR><BR> 说明 当接收字符后,若 Rthreshold 属性设置为
0(缺省值)则不产生 OnComm 事件。例如,设置 Rthreshold 为 1,接收缓冲区收到每一个字符都会使
MSComm 控件产生 OnComm 事件。 <BR><BR><A><STRONG>CTSHolding 属性
</STRONG></A><BR><BR> 确定是否可通过查询 Clear To Send (CTS)
线的状态发送数据。Clear To Send
是调制解调器发送到相联计算机的信号,指示传输可以进行。该属性在设计时无效,在运行时为只读。<BR><BR> 语法:
object.CTSHolding(Boolean) <BR><BR> Mscomm 控件的 CTSHolding
属性设置值:<BR><BR> True Clear To Send 线为高电平。 <BR><BR> False
Clear To Send 线为低电平。 <BR><BR> 说明:如果 Clear To Send 线为低电平
(CTSHolding = False) 并且超时时,MSComm 控件设置 CommEvent 属性为
comEventCTSTO (Clear To Send Timeout) 并产生 OnComm 事件。
<BR><BR> Clear To Send 线用于 RTS/CTS (Request To Send/Clear To
Send) 硬件握手。如果需要确定 Clear To Send 线的状态,CTSHolding 属性给出一种手工查询的方法。
<BR><BR>详细信息 有关握手协议,请参阅 Handshaking 属性。
<BR><BR><STRONG><A>SThreshold 属性<BR><BR> </A></STRONG>MSComm
控件设置 CommEvent 属性为 comEvSend 并产生 OnComm
事件之前,设置并返回传输缓冲区中允许的最小字符数。 <BR><BR> 语法 object.SThreshold [ =
value ] <BR>value 整形表达式,代表在 OnComm 事件产生之前在传输缓冲区中的最小字符数。
<BR><BR> 说明:若设置 Sthreshold 属性为 0(缺省值),数据传输事件不会产生 OnComm
事件。若设置 Sthreshold 属性为 1,当传输缓冲区完全空时,MSComm 控件产生 OnComm
事件。如果在传输缓冲区中的字符数小于 value,CommEvent 属性设置为 comEvSend,并产生 OnComm
事件。comEvSend 事件仅当字符数与 Sthreshold 交叉时被激活一次。例如,如果 Sthreshold 等于
5,仅当在输出队列中字符数从 5 降到 4 时,comEvSend 才发生。如果在输出队列中从没有比 Sthreshold
多的字符,comEvSend 事件将绝不会发生。 <BR><BR><BR><STRONG><A>Handshake 常数
<BR></A></STRONG><BR> 常数 值 描述 <BR> comNone 0 无握手。
<BR> comXonXoff 1 XOn/Xoff 握手。 <BR> comRTS 2
Request-to-send/clear-to-send 握手。 <BR> comRTSXOnXOff 3
Request-to-send 和 clear-to-send 握手皆可。
<BR><BR><BR><STRONG><A>OnComm 常数 <BR></A></STRONG><BR>常数 值 描述
<BR>comEvSend 1 发送事件。 <BR>comEvReceive 2 接收事件。 <BR>comEvCTS 3
clear-to-send 线变化。 <BR>comEvDSR 4 data-set ready 线变化。
<BR>comEvCD 5 carrier detect 线变化。 <BR>comEvRing 6 振铃检测。
<BR>comEvEOF 7 文件结束。 <BR><BR><BR><STRONG><A>Error 常数
<BR></A></STRONG><BR>常数 值 描述 <BR>comEventBreak 1001 接收到中断信号
<BR>comEventCTSTO 1002 Clear-to-send 超时 <BR>comEventDSRTO 1003
Data-set ready 超时 <BR>comEventFrame 1004 帧错误
<BR>comEventOverrun 1006 端口超速 <BR>comEventCDTO 1007 Carrier
detect 超时 <BR>comEventRxOver 1008 接收缓冲区溢出 <BR>comEventRxParity
1009 Parity 错误 <BR>comEventTxFull 1010 传输缓冲区满 <BR>comEventDCB
1011 检索端口 设备控制块 (DCB) 时的意外错误 <BR><BR><A><STRONG>InputMode 常数
<BR><BR></STRONG></A>常数 值 描述 <BR>comInputModeText 0 (缺省)通过
Input 属性以文本方式取回数据。 <BR>comInputModeBinary 1 通过 Input
属性以二进制方式检取回数据。 <BR><BR><BR><BR><BR><BR><A><STRONG>CDHolding 属性
</STRONG></A><BR><BR> 通过查询 Carrier Detect (CD)
线的状态确定当前是否有传输。Carrier Detect
是从调制解调器发送到相联计算机的一个信号,指示调制解调器正在联机。该属性在设计时无效,在运行时为只读。
<BR><BR> 语法 object.CDHolding <BR><BR> 设置值:CDHolding
属性的设置值为:<BR><BR> 设置 描述 <BR> True Carrier Detect 线为高电平
<BR><BR> False Carrier Detect 线为低电平 <BR><BR> 说明:注意当 Carrier
Detect 线为高电平 (CDHolding = True) 且超时时,MSComm 控件设置CommEvent 属性为
comEventCDTO(Carrier Detect 超时错误),并产生 OnComm 事件。 <BR><BR> 注意
在主机应用程序中捕获一个丢失的传输是特别重要的,例如一个公告板,因为呼叫者可以随时挂起(放弃传输)。
<BR><BR> Carrier Detect 也被称为 Receive Line Signal Detect
(RLSD)。 <BR><BR> 数据类型 Boolean <BR><BR><STRONG><A>DSRHolding
属性<BR><BR> </A></STRONG>确定 Data Set Ready (DSR) 线的状态。Data
Set Ready
信号由调制解调器发送到相连计算机,指示作好操作准备。该属性在设计时无效,在运行时为只读。<BR><BR> 语法:object.DSRHolding
<BR><BR> object 所在处表示对象表达式,其值是“应用于”列表中的对象。
<BR><BR> DSRHolding 属性返回以下值: <BR> 值 描述 <BR> True Data Set
Ready 线高 <BR><BR> False Data Set Ready 线低 <BR><BR> 说明:当 Data
Set Ready 线为高电平 (DSRHolding = True) 且超时时,MSComm 控件设置 CommEvent
属性为 comEventDSRTO(数据准备超时)并产生 OnComm 事件。 <BR>当为 Data Terminal
Equipment (DTE) 机器写 Data Set Ready/Data Terminal
Ready<BR><BR> 握手例程时该属性是十分有用的。 <BR><BR> 数据类型:Boolean
<BR><BR><BR><A><STRONG>Settings 属性<BR><BR>
</STRONG></A>设置并返回波特率、奇偶校验、数据位、停止位参数。 <BR><BR> 语法:
object.Settings[ = value] <BR><BR> 说明:当端口打开时,如果 value 非法,则
MSComm 控件产生错误 380(非法属性值)。 <BR><BR> Value
由四个设置值组成,有如下的格式:<BR><BR> "BBBB,P,D,S" <BR><BR> BBBB 为波特率,P
为奇偶校验,D 为数据位数,S 为停止位数。value 的缺省值是: "9600,N,8,1"
<BR><BR><BR><STRONG><A>InputLen 属性<BR><BR>
</A></STRONG>设置并返回 Input 属性从接收缓冲区读取的字符数。 <BR><BR> 语法
object.InputLen [ = value] <BR><BR> InputLen
属性语法包括下列部分:<BR><BR> value 整型表达式,说明 Input
属性从接收缓冲区中读取的字符数。<BR><BR> 说明:InputLen 属性的缺省值是 0。设置 InputLen 为
0 时,使用 Input 将使<BR><BR> MSComm 控件读取接收缓冲区中全部的内容。
<BR><BR> 若接收缓冲区中 InputLen 字符无效,Input 属性返回一个零长度字符串 ("")。在使用
Input 前,用户可以选择检查 InBufferCount
属性来确定缓冲区中是否已有需要数目的字符。该属性在从输出格式为定长数据的机器读取数据时非常有用。
<BR><BR><BR><STRONG><A>EOFEnable
属性<BR><BR></A></STRONG> 确定在输入过程中 MSComm 控件是否寻找文件结尾 (EOF)
字符。如果找到 EOF 字符,将停止输入并激活 OnComm 事件,此时 CommEvent 属性设置为
comEvEOF,<BR><BR> 语法:object.EOFEnable [ = value ]
<BR><BR> EOFEnable 属性语法包括下列部分:<BR><BR> value 布尔表达式,确定当找到 EOF
字符时,OnComm 事件是否被激活,如“设置值”中所描述。<BR><BR> value 的设置值:
<BR><BR> True 当 EOF 字符找到时 OnComm 事件被激活。 <BR><BR> False (缺省)当
EOF 字符找到时 OnComm 事件不被激活。 <BR>说明:当 EOFEnable 属性设置为 False,OnComm
控件将不在输入流中寻找 EOF 字符。 <BR><BR><BR><A><STRONG>错误消息
</STRONG></A>(MS Comm 控件) <BR><BR><BR>下表列出 MSComm 控件可以捕获的错误:
<BR><BR>值 描述 <BR>380 无效属性值 comInvalidPropertyValue <BR>383
属性为只读 comSetNotSupported <BR>394 属性为只读 comGetNotSupported
<BR>8000 端口打开时操作不合法 comPortOpen <BR>8001 超时值必须大于 0 <BR>8002
无效端口号 comPortInvalid <BR>8003 属性只在运行时有效 <BR>8004 属性在运行时为只读
<BR>8005 端口已经打开 comPortAlreadyOpen <BR>8006 设备标识符无效或不支持该标识符
<BR>8007 不支持设备的波特率 <BR>8008 指定的字节大小无效 <BR>8009 缺省参数错误 <BR>8010
硬件不可用(被其它设备锁定) <BR>8011 函数不能分配队列 <BR>8012 设备没有打开 comNoOpen
<BR>8013 设备已经打开 <BR>8014 不能使用 comm 通知 <BR>8015 不能设置 comm 状态
comSetCommStateFailed <BR>8016 不能设置 comm 事件屏蔽 <BR>8018
仅当端口打开时操作才有效 comPortNotOpen <BR>8019 设备忙 <BR>8020 读 comm 设备错误
comReadError <BR>8021 为该端口检索设备控制块时的内部错误 comDCBError </P></TD></TR>
<TR>
<TD align=right width="100%" height=17><BR><A
href="http://www.51kaifa.com/zxyd/read.php?ID=166">返回</A> <A
href="http://www.51kaifa.com/zxyd/read_z.php?ID=950&BigClass=6">上一页</A>
<A
href="http://www.51kaifa.com/zxyd/read_z.php?ID=952&BigClass=6">下一页</A>
信息发布:工号01 转引自: 【<A
href="javascript:fontzoom(16)">大</A> <A
href="javascript:fontzoom(14)">中</A> <A
href="javascript:fontzoom(12)">小</A>】【<A
onclick=window.print();
href="http://www.51kaifa.com/zxyd/read_z.php?ID=951&BigClass=6#">打印</A>】【<A
href="javascript:window.close()">关闭</A>】
<BR><BR></TD></TR></TBODY></TABLE></TD>
<TD vAlign=top width=1 bgColor=#808080><IMG height=1 alt=""
src="MSComm控件使用详解-_files/xu2.gif" width=1 border=0></TD>
<TD vAlign=top width=169 bgColor=#edf0f5 height=500><!-- 广告位 --><!-- $sign哪个页面$digit位置$way等h不循环TR;X循环TR;$num显示个数 --></TD></TR></TBODY></TABLE><!-- 尾部 -->
<SCRIPT language=JavaScript>document.write("<img src='http://www.51kaifa.com/HostAdmin/count/Count.php?Referer=http://www.51kaifa.com/zxyd/read_z.php&Ip=127.0.0.1&Width="+escape(screen.width)+"&Height="+escape(screen.height)+"' border=0 width=0 height=0>");</SCRIPT>
<TABLE cellSpacing=0 cellPadding=0 width=760 align=center border=0>
<TBODY>
<TR>
<TD>
<TABLE cellSpacing=0 cellPadding=0 width="100%" border=0>
<TBODY>
<TR>
<TD width="100%"
background=MSComm控件使用详解-_files/sy_top1.gif><IMG height=16
src="MSComm控件使用详解-_files/sy_top1.gif" width=4></TD></TR>
<TR>
<TD align=middle><A
href="http://www.51kaifa.com/gywm.php?action=guanyu">关于我们</A> ┋ <A
href="http://www.51kaifa.com/FriendSiteReg/F_read.php"
target=_blank>友情链接</A> </TD></TR></TBODY></TABLE>
<TABLE height=1 cellSpacing=0 cellPadding=0 width="100%"
background=MSComm控件使用详解-_files/xu2.gif border=0>
<TBODY>
<TR>
<TD width="100%"></TD></TR></TBODY></TABLE>
<TABLE height=60 cellSpacing=0 cellPadding=0 width="100%"
border=0><TBODY>
<TR>
<TD width="100%">
<P align=center><A
href="mailto:E-mail:webmaster@51kaifa.com"><BR>E-mail:webmaster@51kaifa.com</A>
<BR>Copyright©2005 无忧电子开发网版权所有 <BR><!-- <a href="mailto:E-mail:nan-ji-hu@sohu.com">南极狐工作室制作与维护</a> QQ:348322455 <br> -->
<CENTER><A href="http://www.miibeian.gov.cn/"
target=_blank>粤ICP备05064233号</A></CENTER><BR>
<CENTER>
<SCRIPT src="MSComm控件使用详解-_files/count.htm"></SCRIPT>
<SCRIPT language=JavaScript
src="MSComm控件使用详解-_files/click.htm"
type=text/javascript></SCRIPT>
</CENTER><BR></TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE></BODY></HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -