CRichEditCtrl 在使用 MFC 编写的共享 dll 中无法正常工作?
Posted
技术标签:
【中文标题】CRichEditCtrl 在使用 MFC 编写的共享 dll 中无法正常工作?【英文标题】:CRichEditCtrl not working properly in shared dll written using MFC? 【发布时间】:2012-07-10 09:40:37 【问题描述】:我正在编写一个用 MFC 编写的 DLL,供其他应用程序使用。 项目设置: 1.在静态库中使用MFC 2. 预处理器:AFXDLL 3. MD构建
在调用之前我也使用过 AFX_MANAGE_STATE (AfxGetStaticModuleState()) 内部调用 InitInstance 和 DLL main 的 CWinApp。
此对话框中有选项卡,我只能看到第一个选项卡,所有其他选项卡都显示为空白。当我运行与 exe 相同的 DLL(需要更改)时,它工作正常。 当我调用 AfxGetApp() 时,DLL 也崩溃了吗? 我想主要问题是由于 DOMODAL()。谁能告诉标签控制不起作用的问题可能是什么?
更新 我发现 CRichEditCtrl 是问题所在。在对话框选项卡中,当我删除它时我也有这个它工作正常。有谁能知道这是什么原因。。 我之前在 InitiInstance() 中使用过 AfxInitRichEdit2()
我是 MFC 新手,如果您需要更多信息,请告诉我
【问题讨论】:
【参考方案1】:您必须在使用富编辑控件之前调用AfxInitRichEdit()。
【讨论】:
【参考方案2】:你在EXE的InitInstance
中调用AfxInitRichEdit2
吗?
也尝试将其放入 DLL 的 InitInstance
中!
【讨论】:
以上是关于CRichEditCtrl 在使用 MFC 编写的共享 dll 中无法正常工作?的主要内容,如果未能解决你的问题,请参考以下文章
MFC CRichEditCtrl中插入gif图片的问题。。。