首页 > 解决方案 > 找不到 gtkbuilder.c 的日志域名

问题描述

我想重定向来自gtkbuilder.cg_warning()的消息和类似函数,例如著名的:

(main.exe:39280): Gtk-WARNING **: 01:34:48.787: 找不到信号处理程序'on_window_realize'。你用-rdynamic编译了吗?

使用g_log_set_handler(). 它期望域名作为第一个参数,这是我似乎无法找到的。如果G_LOG_DOMAIN未在源中定义,则默认为NULL在这种情况下我将无法使用g_log_set_handler()它来重定向它。

它的日志域名是什么,或者 - 我如何才能重定向这些消息(我将它们重定向到 GtkTextBuffer)?

标签: cgtkgtkbuilder

解决方案


GTK 正在使用结构化日志记录,这意味着它g_log_set_handler()不起作用。

g_log_set_writer_func()应该使用它来捕获每个结构化日志并解析GLogWriterFunc回调中的给定日志。


推荐阅读