尝试在Ubuntu平台上的系统日志中检索wxLog消息:
示例代码:
char *log = "Log System error";
wxLogSysError(log);
结果:
Show dialog with status (warning dialog):
Log System error (error 0: Success)
然后尝试解决存储在Ubuntu /var/log/*
或/var/log/syslog
中的登录位置。我找不到任何wx
或尝试按时间ll -ltrha /var/log
排序,最新日志是syslog但没有提到wxLog。
尝试作为样本:
cat /var/log/syslog | grep "wx"
没有返回wx的错误日志。
在Ubuntu系统平台上存储wxLogSysError(log);
函数的错误在哪里?或者应该如何应对呢?它提到了errrno()或GetLastError()但是如何存储在系统日志中?
参考文献: http://docs.wxwidgets.org/trunk/group__group__funcmacro__log.html#ga28f01715af5aaf37caffdc5bc00fde3f
调试模式没有显示任何提及它。
答案 0 :(得分:1)
正如您链接的文档所解释的那样,wxLogSysError()
与wxLogError()
完全相同,即在GUI程序中默认显示在对话框中,只需添加对应于最后一条的消息系统错误(即Unix下的errno
)。
所以这些消息永远不会进入syslog。如果你想要syslog输出,你必须实现自己的wxLog
派生类来完成它。您还可以使用现有的wxLogStream
或wxLogStderr
类来登录文件。