关于MSCOMM传送数据的有关问题
关于MSCOMM传送数据的问题为什么我用MSCOMM传送数据时出现错误提示dima(2) as byte a(0)&48mscomm.output
关于MSCOMM传送数据的问题
为什么我用MSCOMM传送数据时出现错误提示
dim a(2) as byte
a(0)=&48
mscomm.output a(0)
出现的错误提示是“ invalid property value ”
请大家帮忙分析 一下。谢谢
[解决办法]
1)a是Byte数组,Output属性是Variant数据类型。
2)MsComm控件这样规定的,传的是Variant这种类型数据。
[解决办法]请问,您说 Byte数组就属于Variant 没见过这种说法呀, 哪儿有资料介绍?
一个Byte数组可包含在一个Variant内。
难道MSDN关于MsComm控件的Output属性的说明还不够明确吗?如果LZ仍不理解,那也没办法了.
[解决办法]的确,微软的文档是说过 MsComm 控件 Output 属性的数组参数必须是 Variant 类型。它的目的是兼容文本发送和二进制发送。
但实际上, MsComm 控件 Output 属性是可以接受 Byte 数组的。这是因为这个控件代码足够复杂来满足各种应用场景。
类似地,还有 Input 属性。我一般是用 Variant 变量,然后赋值给 Byte 数组。但也有很多人直接使用 Byte 数组的。
从数据类型的角度,Byte 类型与 Variant 类型相互不能画等号,虽然 Variant 可以包含 Byte 类型元素。Variant 实际上是一个复合类型,包含多种数据类型。