CWinApp dll 文件给出带有 CWinApp 类的概率

Posted

技术标签:

【中文标题】CWinApp dll 文件给出带有 CWinApp 类的概率【英文标题】:CWinApp dll file giving prob with CWinApp class 【发布时间】:2013-09-07 15:44:19 【问题描述】:

我正在尝试将dll 文件链接到我在MFC template 中的项目,只需调用它并包含头文件。但是,每当我尝试为我的dll 类的头文件创建一个对象时,我都会得到一个assertion failure。 这两个类都是CWinApp,我进一步调试发现mfc WinApp 应用程序都在尝试调用相同的afxgetThread() 函数,从而导致assertion failure。有谁可以帮我离开这里吗 ? 谢谢。

【问题讨论】:

【参考方案1】:

引用CWinApp: The Application Class:

在框架上构建的应用程序必须具有一个且只有一个派生自CWinApp 的类的对象。

【讨论】:

所以即使我链接一个单独的 dll,如果我在主程序中创建一个,我也无法在 dll 函数中调用另一个 cWinApp 类? @Hadi 此处的文档相当明确:每个应用程序而不是每个模块一个CWinAppCWinApp 实现为单例并存储应用程序范围的状态。要求二审似乎没有多大意义。

以上是关于CWinApp dll 文件给出带有 CWinApp 类的概率的主要内容,如果未能解决你的问题,请参考以下文章

VC定义的三种类型DLL有啥区别

CWinApp::OpenDocumentFile 创建一个新窗口

猎豹MFC1 第一个窗口CWinApp CFrameWnd InitInstance 消息映射CPaint CRect Create

用 C# 重写 MFC DLL?

MFC DLL的GUI工具?

如何在 CWinThread 派生类中正确创建 CDialog 框