是的,我已经进行了搜索,但只找到了部分有效的东西。这似乎是一个真正的迷宫。例如:
- 为什么他们甚至使用
g_main_loop_run()
?当GTK+程序已经进入主循环gtk_main()
时,真的有必要吗? ? - 调用
dbus_bus_request_name()
等函数时,路径、接口(interface)名称和信号名称应该是什么样子? ,dbus_message_new_signal()
,dbus_bus_add_match()
,dbus_message_is_signal()
...? - 之后应该如何在
/etc/dbus-1/system.conf
中正确设置名称文件甚至允许程序使用D-Bus接口(interface)?令人惊讶的是,我发现所有教程都忘记提及您需要编辑它。 - 如何异步捕获消息?是否应该像在单独的线程中那样以某种方式完成?
请推荐任何好的 GTK+ D-Bus 示例,这有助于学习如何使用它。
最佳答案
gtk_main
正在调用 g_main_loop_run()
,您应该查看文件 gtk/gtkmain.c来找出答案。
谷歌搜索dbug_bus_request_name
给出了几个例子,特别是dbus-example.c
你应该读一本好书 gtk tutorial了解信号和槽在 Gtk 上下文中的含义。
谷歌搜索d-bus教程
给出this dbus tutorial
最后,一个好主意是找到并研究相关免费软件的源代码。 GtkApplication示例正在调用dbus代码。
关于c - 请推荐一个好的D-Bus教程(Linux C GTK+),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12534480/