5

我需要在我的应用程序中引入 IPC,我还需要继续在 GNU/Linux 和 Windows 上进行分发(目前我在 GNU/Linux 上使用单声道,在 Windows 上使用 .NET,两者都支持 GTK+)。通信仅限于同一个盒子。

在两个系统上进行 IPC 的最佳方法是什么?

我读到 DBUS 也可以在带有主流源代码的 Windows 上使用。任何人都有使用它的经验,我的意思是在 Windows 上?

在此先感谢大家。

4

3 回答 3

3

我对 DBus(在 Linux 上)的体验非常糟糕。

我最终用自定义格式的 tcp 套接字替换了它(但数据非常有限,因此开发自定义格式根本不需要很长时间)。

于 2012-10-31T10:40:42.457 回答
3

我会简单地使用Remoting

仅仅因为其他选项很糟糕:

  • WCF 在 Mono 中非常有限

  • 正如 Rolf 所说,DBus 有它的问题。更不用说它的 C# 故事有点笨拙,即:最好的解决方案是使用托管 Dbus,你可以使用 NDesk.Dbus,但是这个库被重命名为 dbus-sharp;但是 Gnome 世界正在转向使用 GDbus,而且还没有任何约束力。

  • Rolf 提出的 Socket 对我来说太低级了。

于 2012-11-01T08:24:53.340 回答
1

Mono 具有中等良好的 WCF 支持,适用于与平台无关的 IPC。

于 2012-10-31T10:23:25.140 回答