请问怎样在VB中利用com口传输一个超过128的数值 我试了 好像只能传送128一下的数字请问为什么
请问怎样在VB中利用com口传输一个超过128的数值 我试了 好像只能传送128一下的数字请问为什么 请各位兄弟帮帮忙 --------------------编程问答-------------------- mscomm1.InputMode =comInputModeBinary --------------------编程问答--------------------Dim bytSenData() As Byte--------------------编程问答--------------------
ReDim bytSenData(0)
bytSenData(0) = 128
MsComm1.Output = bytSenData
LZ好象有点错误,mscomm不管什么模式,它最大所能传输的值应该是255而不是127
大于255的要拆分后发送:
先把你要发的数转换成16进制,然后从右向左两位一拆,不够可以补0,例如256转成16进制就是100,你拆成
01 和 00 然后,把01和00转成字节,发送后由接收方再组合,就OK了
如果接收方不是你做的东东,你就要去查一些数据格式是什么样的了,你发送数据的格式要符合接收方的格式,
如BCD码、IEEE754码等,这时你要把拆完了字节数按照接收方的数据格式要求,看先发高位还是先发低位。
--------------------编程问答-------------------- 你的意思是ASCII编码超过128吧?
你可以使用二进制方式传送,只需要把它转换为对应的十六进制来发送即可,可参考以下代码:
http://download.csdn.net/source/1262066 --------------------编程问答-------------------- 这个问题我也曾遇到过,,
现在解决了。
用数组传送就可以了。。
具体看我在这个部分提的问题,100分的那个有具体的解决办法和源码
补充:VB , COM/DCOM/COM+