dbus中丢失服务名称的原因可能是什么 我使用C++通用API DBUS绑定。我正在从客户端调用服务器中名为getCurrentTrackInfo(struct trackInfo\u st&trackInfo)的方法
此数据结构有超过15个成员 调用此特定方法[getCurrentTrackInfo]时,服务器会立即丢失总线名称。[com.service.MediaPlayerDemo]dbus中丢失服务名称的原因可能是什么 我使用C++通用API DBUS绑定。我正在从客户端调用服务器中名为getCurrentTrackInfo(struct trackInfo\u st&trackInfo)的方法,c++,linux,dbus,C++,Linux,Dbus,此数据结构有超过15个成员 调用此特定方法[getCurrentTrackInfo]时,服务器会立即丢失总线名称。[com.service.MediaPlayerDemo] dbus中是否有用于捕获总线名称丢失原因的操作和不操作或错误代码列表。您可以使用dbus监视器查看总线上发生的情况,任何错误都应可见 我将尝试使用另一种方法与服务交互,以排除绑定和客户端代码中的错误。如果您在linux机器上,一种方法可能是使用例如D-Feet或dbus send 如果错误是由于服务崩溃造成的(听起来是这样的
dbus中是否有用于捕获总线名称丢失原因的操作和不操作或错误代码列表。您可以使用
dbus监视器查看总线上发生的情况,任何错误都应可见
我将尝试使用另一种方法与服务交互,以排除绑定和客户端代码中的错误。如果您在linux机器上,一种方法可能是使用例如D-Feet
或dbus send
如果错误是由于服务崩溃造成的(听起来是这样的),那么总线上可能看不到实际的错误。由于我的服务崩溃,我无法在dbus监视器日志中看到任何内容。在我的数据结构中,20个元素中有6个是字符串。对于某些字符串集,dbus方法调用很好,而对于某些其他字符串集,dbus方法调用失败,客户端出现远程错误,服务器端出现服务崩溃。正如我在回答中所说,您可以通过与服务交互(例如D-Feet)来排除客户端作为错误源。如果服务崩溃了,我会说,很明显,错误在服务中,客户端无法修复错误。在D-Bus中,您的客户机中没有“不”可以使服务崩溃,如果发生这种情况,则服务中存在错误。谢谢。所以我将排除客户部分。现在我想检查一下服务器,任何关于如何在服务器中开始调试的帮助都会非常有帮助。我试着用D型脚这个很酷的工具。好的,很好。应该像调试任何其他软件一样调试该服务。这次车祸根本不一定与D-Bus有关。我建议您针对该问题提出一个特定的问题,并在堆栈溢出上发布另一个问题。祝你好运