我正在使用Boost Log来构建我的日志系统。在我的程序中,有许多DLL组件,这是构建程序的常用方法。
我有一种困惑。在每个dll中,我需要初始化自己的日志系统并写入其特定的日志文件,否则DLL无法输出日志消息。所以在我的程序中,我必须多次初始化日志。我在Dll entry point:
中初始化日志switch( fdwReason )
{
case DLL_PROCESS_ATTACH:
// Initialize once for each new process.
// Return FALSE to fail DLL load.
break;
通过这种方式,如果有五个dll,我需要使用不同的日志文件初始化日志五次,这是一个巨大的工作量。
是否可以在整个dll中初始化一次日志?我想在每个dll中共享日志系统。
或者还有其他类型的Log系统支持吗?