我在mfcdll中创建了一个对话框,现在想在另一个mfc应用程序中调用这个dll同时弹出对话框。
我在mfcdll中创建了一个对话框,现在想在另一个mfc应用程序中调用这个dll同时弹出对话框,但是在mfc应用程序中调用mfcdll时会弹出错误errorC2065:“...
我在mfcdll中创建了一个对话框,现在想在另一个mfc应用程序中调用这个dll同时弹出对话框,但是在mfc应用程序中调用mfcdll时会弹出错误 error C2065: “IDD_DIALOG1”: 未声明的标识符,请问这是怎么回事,谢谢。
展开
2个回答
展开全部
方法一:将dll编译成静态链接到mfc方式的dll。
方法二:在对话框定义之前加上AFX_MANAGE_STATE(AfxGetStaticModuleState());
方法二:在对话框定义之前加上AFX_MANAGE_STATE(AfxGetStaticModuleState());
追问
能否详细说一下第二种方法怎么做、我最近才开始学习这个东西,不怎么会,谢谢。
追答
你先试试第一种方法,如果第一种方法不行(注:是将dll编译成静态链接mfc方式,至于你mfc应用程序静态链接动态链接无所谓),说明我们理解的不是同一个问题
第二种方法:比如导出函数是这个ShowExportDlg
extern "C" __declspec(dllexport) void ShowExportDlg()
{
AFX_MANAGE_STATE(AfxGetStaticModuleState());
CExportDlg dlg;
dlg.DoModal();
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询