为什么在DLL调用MFC会出问题????????

ValenYou 2003-09-08 12:59:59
我设计了一个DLL,里面用了MFC的CDialog,在导出函数中调用我的函数
void ShowAppWnd()
{
AFX_MANAGE_STATE(AfxGetStaticModuleState());
appwnd.Create(IDD_DIALOG,NULL);
appwnd.ShowWindow(SW_SHOW);
}

显示这个对话框,可是有问题???为什么,在DLL使用MFC要注意什么问题啊?
...全文
37 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
ValenYou 2003-09-08
  • 打赏
  • 举报
回复
to cline

我的程序就彻底崩溃,出现是否要调试的对话框

to bluebohe(薄荷)
我看MFC的代码注释,说要加入AFX_MANAGE_STATE(AfxGetStaticModuleState());
在所有到处函数前面,可以没有用,你的代码不Create可以用吗?


to kangfx

不行~~~
kangfx 2003-09-08
  • 打赏
  • 举报
回复
将原型修改如下:extern "C" __declspec( dllexport ) void ShowAppWnd()
bluebohe 2003-09-08
  • 打赏
  • 举报
回复
第一你的对话框ID的值是不是其他的ID重复?
不重复的话又没有加载资源句柄?
HINSTANCE hInstResourceClient = AfxGetResourceHandle();
AfxSetResourceHandle(::GetModuleHandle("aaa.dll"));
CaaaDlg dlg;
dlg.DoModal();
AfxSetResourceHandle(hInstResourceClient);
bluebohe 2003-09-08
  • 打赏
  • 举报
回复
第一你的对话框ID的值是不是其他的ID重复?
不重复的话又没有夹在资源句柄?
HINSTANCE hInstResourceClient = AfxGetResourceHandle();
AfxSetResourceHandle(::GetModuleHandle("aaa.dll"));
CaaaDlg dlg;
dlg.DoModal();
AfxSetResourceHandle(hInstResourceClient);
Cline 2003-09-08
  • 打赏
  • 举报
回复
what is type of appwnd?

15,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 进程/线程/DLL
社区管理员
  • 进程/线程/DLL社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧