关于vb unicode字符串与byte数组处理,各位大侠和路过的来急救啊搞了2天了,该如何处理

关于vb unicode字符串与byte数组处理,各位大侠和路过的来急救啊,搞了2天了
在下现在做串口通信,使用modbus协议
问题就是   vb的unicode带来的
    byte的数组   中2个byte为数据位置,其实里面是4个byte的空间
    data(0)=0
    data(1)=1
    实际表示的数值是     00   01
当我输入比较小的数值的时候,直接写入数组,可以使用这样的方法,
但是现在我需要写入比较大的数值,
例如,写入65514     16进制   位FF   EA  
想要得到的效果就是data(0)=FF   data(1)=EA
Dim   data1   As   Long
data1   =   65514

Dim   data2   As   String
data2   =   Hex(data1)

Dim   data3()   As   Byte
data3   =   data2

Text1.Text   =   UBound(data3)     显示为7个byte,里面的内容倒是正确的16进制


各位大侠来帮帮忙啊,在下初学vb,以前用C,还没碰到过unicode这回事

------解决方案--------------------
或者
Private Sub Form_Click()
Dim a(1) As Byte, b As Long
b = 65514
a(0) = "&H " & Left(Hex(b), 2)
a(1) = "&H " & Right(Hex(b), 2)
Debug.Print Hex(a(0)), Hex(a(1))
End Sub
------解决方案--------------------
小刀惋心很有意思啊!我是指:
a(0) = a(0) Xor a(1)
a(1) = a(0) Xor a(1)
a(0) = a(0) Xor a(1)
其实:
Private Declare Sub CopyMemory Lib "kernel32 " Alias "RtlMoveMemory " (Destination As Any, Source As Any, ByVal Length As Long)

Private Sub Form_Click()
Dim a(1) As Byte, b As Long
b = 65514
CopyMemory a(0), b, 2
Debug.Print Hex(a(1)), Hex(a(0))
End Sub