我想重定向来自g_warning()
的消息和来自gtkbuilder.c的类似函数,例如著名的:
(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)?
GTK使用结构化日志记录,这意味着g_log_set_handler()
将无法工作。
应该使用g_log_set_writer_func()
来捕获每个结构化日志,并在回调中解析给定的GLogWriterFunc
。