C#对象+命名管道+ C ++对象

时间:2013-11-15 07:23:04

标签: wpf wcf mfc named-pipes

我有三个申请。 1. MFC(创建命名管道和读取,写入命名管道) 2.服务(读取或写入命名管道) 3. WPF应用程序将数据发送到服务以写入命名管道。

Flow就是这样的。 首先,MFC应用程序创建命名管道,然后服务创建命名管道客户端以读取和写入管道。 WPF应用程序使用服务并将数据发送到命名管道。

现在有人可以告诉我如何将C#对象(可能是序列化)写入命名管道。 那么我如何通过读回写入命名管道的c#对象来创建C ++对象。 反之亦然(c ++对象写入命名管道然后在服务中我想从命名管道创建c#对象)

1 个答案:

答案 0 :(得分:1)

命名管道是"低级"传输,它没有定义你应该/可以序列化/反序列化你的数据(它只是传输普通的"数据块",像byte []或字符串)

您正在寻找的是一个序列化库,它允许您在C#中序列化对象并在C ++中反序列化,反之亦然。

以下是相关问题: Serialize in C++ then deserialize in C#?

以下是它的实现方法:将C#中的对象序列化为字节数组/字符串,然后将该数组/字符串写入命名管道;然后从C ++应用程序中的命名管道读取序列化数据块,并将其反序列化为C ++对象。反之亦然。

以上帖子建议使用google Protocol Buffers库进行序列化/反序列化。