Vb6 通过winsock发送propertybag?
我无法通过Vb6 通过winsock发送propertybag?,vb6,winsock,propertybag,Vb6,Winsock,Propertybag,我无法通过winsock发送propertybag。我有一个客户机/服务器应用程序,它使用propertybag发送图像。我将propertybag转换为字节数组,并尝试通过winsock发送它,然后当我将字节数组转换回propertybag时,它似乎无法读取它。看起来数据在发送时已损坏 客户端(发送propertybag) 服务器(接收属性包) 我收到的错误: Run-time error '327': Data value named 'picc' not found 当我尝试在没有win
winsock
发送propertybag
。我有一个客户机/服务器应用程序,它使用propertybag
发送图像。我将propertybag
转换为字节数组,并尝试通过winsock
发送它,然后当我将字节数组转换回propertybag
时,它似乎无法读取它。看起来数据在发送时已损坏
客户端(发送propertybag)
服务器(接收属性包)
我收到的错误:
Run-time error '327':
Data value named 'picc' not found
当我尝试在没有
winsock
的情况下在单个程序中执行代码时,效果很好。当我通过winsock
发送字节数组时,就会出现问题 大多数人还通过转到项目->引用来利用ADO流对象(添加对Microsoft ActiveX Data Objects 2.5或任何版本的引用)
它被称为PicturePicture.zip,由一个非常熟悉Winsock和客户机/服务器的程序员编写。我会将两个字节数组(发送和接收)写入一个文件,并比较差异一个
SendData
调用无法通过一个GetData
调用可靠地接收。这就是“数据包谬误”。您不以用户定义的“数据包”形式发送数据,而是发送和接收长度不同的流片段(每个数据到达事件可能小到1字节)。TCP不是数据报协议。
Dim byt() As Byte
Dim pb As PropertyBag
Set pb = New PropertyBag
Winsock1.GetData byt, vbByte
pb.Contents = byt
Image1.Picture = pb.ReadProperty("picc")
Run-time error '327':
Data value named 'picc' not found