辐射4土制步枪代码:vb大人救救我!

来源:百度文库 编辑:神马品牌网 时间:2024/05/03 22:44:41
为何我的mscomm的commeven=2时mscomm1.input无法传输数据给其他函数?

我的程序如下
Private Sub MSComm1_OnComm()
Dim x As String
If MSComm1.CommEvent = 2 Then
x = MSComm1.Input
MSComm1.InBufferCount = 0
End If
End Sub

运行到x=mscomm1.input计算机就会卡住!

看你的代码,我以为你有几点要注意:
1. 你的MSComm1的属性RThreshold是否进行设置,它必须是1或大于1.
2. 你的MSComm1的属性InputMode未作设置,是设置或返回 Input 属性取回的数据的类型。
InputMode属性有2种设置
comInputModeText 0 (缺省)数据通过 Input 属性以文本形式取回。
comInputModeBinary 1 数据通过 Input 属性以二进制形式取回。

下面给出一段代码,供参考:
Private Sub ctrMSComm_OnComm()
Dim bytInput() As Byte
Dim intInputLen As Integer
Select Case frmMain.ctrMSComm.CommEvent
Case comEvReceive
'此处添加处理接收的代码
frmMain.ctrMSComm.InputMode = comInputModeText '按ASCII接收
intInputLen = frmMain.ctrMSComm.InBufferCount
ReDim bytInput(intInputLen)
bytInput = frmMain.ctrMSComm.Input
Text1 = bytInput
End If
End Select
End Sub

常数 值 描述
comEvSend 1 在传输缓冲区中有比 Sthreshold 数少的字符。
comEvReceive 2 收到 Rthreshold 个字符。该事件将持续产生直到用 Input 属性从接收缓冲区中删除数据。
comEvCTS 3 Clear To Send 线的状态发生变化。
comEvDSR 4 Data Set Ready 线的状态发生变化。该事件只在 DST 从 1 变到 0 时才发生。
comEvCD 5 Carrier Detect 线的状态发生变化。
comEvRing 6 检测到振铃信号。一些 UART(通用异步接收— 传输)可能不支持该事件。
comEvEOF 7 收到文件结束(ASCII 字符为 26)字符。

自己看看 每个 数值对应的什么作用哦 加分please

代码太少了~你使16进制么?你怎么初始化的串口
To:q44072429 - 秀才 二级
就你在网上找的那点东西还想加分?
轮也论不到你啊