在DLL中无法显示模式对话窗口的问题
我在一个DLL中需要显示一个模式对话框,用来输入一起参数,可是无法显示,调试发现在DoModal()中加载对话模板失败所至,我确信代码及资源都没有问题,后来查了一下MSDN,说在DLL中显示对话框需要用一个窗口来初始化对话框类.我照办,还是不行,请高手指点一下..
......
CWnd* pwndParent = CWnd::FromHandle(pd->hParent);
// Show Convolution parament dialog
CConvDlg dlg(pwndParent);
dlg.m_dwType = 0L;
int iRet = dlg.DoModal();
if(iRet != IDOK)return -10;
......
问题点数:20、回复次数:2Top
1 楼freewing(羽田共)回复于 2003-08-01 01:32:20 得分 20
在显示窗口的函数开头加上:
AFX_MANAGE_STATE(AfxGetStaticModuleState());Top
2 楼krh2001(边城浪子)回复于 2003-08-02 00:18:39 得分 0
非常感谢!!!,这个问题我在今早已经从MSDN中找到了答案..不过还是要感谢你的热心解答..
现在的问题是,我又产生了一个新的问题:
原来在DLL中调AfxMessageBox时没问题,现在就产生了一个CWnd的断言失败.将它放到AFX_MANAGE_STATE(AfxGetStaticModuleState());前就不会出现这个问题了.
虽然编译成Release版本后就没问题了,但总是调试时不方便的..谁知道怎么解决?Top




