我在发送propertybag
winsock
时遇到问题。我有一个客户端/服务器应用程序,通过propertybag
发送图像。我将propertybag
转换为字节数组并尝试通过winsock
发送,然后当我将字节数组转换回propertybag
时,它似乎无法读取它。看起来数据在发送时已损坏。
客户(发送资产包)
Dim pb As PropertyBag
Dim byt() As Byte
Set pb = New PropertyBag
pb.WriteProperty "picc", Image1.Picture
byt = pb.Contents
Winsock1.SendData byt
服务器(接收属性包)
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
当我尝试在没有winsock
的单个程序中执行代码时,它可以正常工作。当我通过winsock
发送字节数组时,会出现问题。
答案 0 :(得分:2)
大多数人还使用ADO流对象(添加对Microsoft ActiveX Data Objects 2.5或任何版本的引用)转到项目 - &gt; <强>参考强>
Here is a working example you can download using a PropertyBag as well as the ADO stream object.
它被称为 PicturePicture.zip ,由一个非常好的Winsock&amp;客户/服务器知识渊博的程序员。