【发布时间】:2021-04-03 10:58:31
【问题描述】:
我有两个进程(.exe),一个是用 C++ 实现的,另一个是用 C# 实现的。我想要的是两个过程之间的通信。为此,我选择了“命名管道”方法。我面临的问题是将类对象从一个应用程序传递到另一个应用程序。我可以轻松地发送字符串数据,但我不知道如何将类对象从应用程序发送到另一个。我的班级结构如下:
enum information
{
TITLE,
STATUS,
DEBUG,
INFO,
OTHER
};
class CInformation
{
private:
information _info;
string _text;
public:
void setInformation(information info, string text) { _info = info; _text = text; }
inline information GetInfo() { return _info; }
inline string GetText() { return _text; }
};
那么如何在 C++ 中序列化这个类,通过命名管道发送它并在 C# 中反序列化它,反之亦然,同样适用于同一个类。请给我一个例子。我也愿意接受任何其他解决方案,也可以在两个进程之间进行双向通信。
【问题讨论】:
-
这能回答你的问题吗? Object Sharing between Applications?
标签: c# c++ serialization deserialization marshalling