串口mscomm 传送图片
我现在做一个从vb4(16位)到vb6移植的项目,通过mscomm送信字符串信息和图片。收信侧解析字符串做相应处理。vb4(16位)传送图片用string,现在vb6我传送图片还想用string来传送,因为如果改按byte来传送,程序会改动很大,以前字符串解析部分都需要修改。vb4(16位) 字符串和图片都是通过下面这个函数传递
①取得照片数据,SENDmj 是string
Dim SENDmj as string
Get #StatF, 1, SENDmj
②发送字符串或图片
OUTmj$ = SENDmj
Sub CommX_Output(OUTmj$)
For n = 1 To LenB(OUTmj$)
m1$ = MidB$(OUTmj$, n, 1)
InterFilForm.Comm1.Output = m1$
Next
End Sub
vb6 我修改为以下
①取得照片数据,StrSend 为字符串
Dim ByteSend(1024) As Byte
Get #StatF, 1, ByteSend()
将byte转为ascii
For jj = 0 To 1024
StrSend = StrSend & ChrW(ByteSend(jj))
Next
②发送字符串或图片
OUTmj$ = StrSend
Sub CommX_Output(OUTmj$)
For n = 1 To LenB(OUTmj$) Step 2
m1$ = MidB$(OUTmj$, n, 2)
InterFilForm.Comm1.Output = m1$
Next
End Sub
字符串发送和接受解析都正确,但是图片发送可以,接受也可以,就是接受到数据和发送的不一样,图片显示不出来?请高人指点一下,图片数据必须byte发送吗,按文本发送怎么转换,请高人指点?如果按byte发送,字符串部分该怎么改呢?(InputMode = comInputModeText)
--------------------编程问答-------------------- 1)首先请LZ确认图片是何种格式的?如何获得?
2)如果图片是2进制文件,则必须以Byte字节流传送.以字符传送回破坏图片内容,以至于无法还原. --------------------编程问答-------------------- 是的,传送图片必须注意处理方式,以字节流方式来处理。 --------------------编程问答-------------------- 貌似只有BMP和JPG能转换为字节流吧? --------------------编程问答--------------------
任何2进制文件(文本文件也可视作2进制文件)都可以Byte字节流传送.
补充:VB , 基础类