当前位置:编程学习 > VB >>

请问怎样在VB中利用com口传输一个超过128的数值 我试了 好像只能传送128一下的数字请问为什么

请问怎样在VB中利用com口传输一个超过128的数值  我试了 好像只能传送128一下的数字请问为什么  请各位兄弟帮帮忙 --------------------编程问答-------------------- mscomm1.InputMode =comInputModeBinary --------------------编程问答--------------------
Dim bytSenData() As Byte
ReDim bytSenData(0)
bytSenData(0) = 128
MsComm1.Output =  bytSenData
--------------------编程问答--------------------
引用楼主 wangkui86799 的回复:
请问怎样在VB中利用com口传输一个超过128的数值  我试了 好像只能传送128一下的数字请问为什么  请各位兄弟帮帮忙


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+
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,