通过套接字发送结构

时间:2009-08-25 18:32:41

标签: c++ vb.net sockets interop struct

我正在使用vb.net,我会将一些结构发送到C ++ tcp服务器。

问题是我发送的结构可能包含其他结构。

STRUCT {    长度;    字节真的;    customStruct customStuff; } FirstStruct;

STRUCT {    长度;    char [] name; } CustomStruct;

假设我想将FirstStruct发送到C ++服务器。我该怎么做呢?一些代码示例会很棒。

感谢。

2 个答案:

答案 0 :(得分:4)

结构不能通过套接字发送,只能发送字节。您必须决定如何将结构转换为发送方中的字节流,并返回到接收方中的等效数据结构。

假设双方都在运行Windows *,您可以使用.NET binary serialization来处理详细信息。我怀疑它支持从VB.NET结构直接转换为C结构,但它应该能够在接收端构建一个合理的近似值。

* Mono,AFAIK,不支持C ++的.NET扩展。

答案 1 :(得分:0)

我会将我的vb结构序列化为类似XML(或JSON)的东西并在服务器端解析它们......