C++ 使用Boost.Log(或Boost.Thread)时在dllinit.cpp行703中的MFC断言

C++ 使用Boost.Log(或Boost.Thread)时在dllinit.cpp行703中的MFC断言,c++,boost,mfc,boost-thread,boost-log,C++,Boost,Mfc,Boost Thread,Boost Log,当我尝试使用Boost.Log登录我的一个DLL时,我在dllinit.cpp中收到一个断言 我有一个tools.dll,其中包含我的日志记录工具,我尝试用Boost.Log实现日志记录。 此tools.dll被另一个helper.dll引用,两个dll都在应用程序中使用 然而,当我启动应用程序时,我得到了断言 Boost 1.54和(包括)Boost.Log以及Boost 1.48和Boost.Log 1.1都会出现这种情况 我翻遍了很多邮件列表和旧帖子。到目前为止,我所了解的是,Boost.

当我尝试使用Boost.Log登录我的一个DLL时,我在dllinit.cpp中收到一个断言

我有一个tools.dll,其中包含我的日志记录工具,我尝试用Boost.Log实现日志记录。 此tools.dll被另一个helper.dll引用,两个dll都在应用程序中使用

然而,当我启动应用程序时,我得到了断言

Boost 1.54和(包括)Boost.Log以及Boost 1.48和Boost.Log 1.1都会出现这种情况

我翻遍了很多邮件列表和旧帖子。到目前为止,我所了解的是,Boost.Thread中的_prawdlmain指针存在问题,一些人建议在

#include <boost/thread/detail/tss_hooks.hpp>
#包括
但这会导致内存泄漏吗? 这表示它将在1.40后修复,但我不知道,是否已经完成。 按建议动态链接到Boost没有帮助

问下去到目前为止没有帮助

任何提示,我应该检查什么

编辑:
它被配置为标准DLL,但依赖于MFC100.DLL,因为我使用afxwin.h中的API来获取应用程序的版本信息。

因此我删除了tools.DLL中对MFC100.DLL的依赖(GetVersionInfo在没有afxwin.h的情况下工作),因此helper.DLL中不再依赖于MFC100.DLL


最后,我的DLL都不依赖MFC,所以断言也消失了。谢谢xMRi

请提供评论,为什么你拒绝投票,这样我可以改进我的提问方式:)你创建了什么样的DLL?MFC扩展DLL?标准DLL?MFC静态链接还是动态链接?