0

我正在尝试实现 Dbus 客户端。Dbus 服务器实际上是由第三方实现的,我不知道它使用什么绑定(但我猜是 gdbus)。现在我可以在我的客户端应用程序中使用 QDbus 绑定,而不管 Dbus 服务器中使用什么绑定吗?如果是这样,如何在服务器(例如 glib 类型)和客户端(例如 qt 类型)之间管理数据类型(wrt 复杂数据类型/用户定义的结构)?对此概念的解释将不胜感激。

4

1 回答 1

1

DBus 上的所有类型都有 DBus 类型,绑定只是将它们转换为自己的格式。例如,一个uint32类型unsigned int在 C/C++ 中是一个,而在 Java 绑定中它是一个UInt32.

基本上,所有实现都需要知道消息的有线格式。只要他们理解这种格式,翻译成什么高级数据类型都没有关系。我不会真正称它们为复杂数据类型,因为您只能通过总线发送基本数据类型。

于 2013-03-11T16:08:33.330 回答