如果您在对话框上使用 MFC 控件,则无法 #define _AFX_NO_MFC_CONTROLS_IN_DIALOGS

如果您在对话框上使用 MFC 控件,则无法 #define _AFX_NO_MFC_CONTROLS_IN_DIALOGS。

MFC对话框添加RichEditControl控件后,运行程序无法弹出对话框,debug和release版都不行。

如果您在对话框上使用 MFC 控件,则无法 #define _AFX_NO_MFC_CONTROLS_IN_DIALOGS_第1张图片

报错内容为:如果您在对话框上使用 MFC 控件,则无法 #define _AFX_NO_MFC_CONTROLS_IN_DIALOGS

遇到这种情况,我们需要先看自己的Richedit控件是哪个版本,我这里的版本是Rich Edit 2.0 Control版本,
在这里插入图片描述

需要在继承自CRichEdit.cpp的文件中的InitInstance()函数中加入

AfxInitRichEdit2();

这行代码。
其代码位置放在
如果您在对话框上使用 MFC 控件,则无法 #define _AFX_NO_MFC_CONTROLS_IN_DIALOGS_第2张图片
就可以了。如果Rich Edit 2.0 Control版本为1.0版本,则添加

AfxInitRichEdit();

然后生成,运行。即可成功显示带有Rech Edit的对话框。
如果您在对话框上使用 MFC 控件,则无法 #define _AFX_NO_MFC_CONTROLS_IN_DIALOGS_第3张图片

你可能感兴趣的:(mfc,c++,microsoft)