VC++MFC 调用DLL里的对话框资源
2007-03-21 11:15
246 查看
1、第一步创建一“MFC AppWizard (dll)”工程,接下来选择“Regular Dll using shared MFC DLL”,点击“Finish”。
2、添加一对话框资源到工程中,从菜单中选择Insert->Resource,添加一“Dialog”
选择“New”,至此对话框已添加到DLL工程中。
3、为对话框添加一新类,如:CTest,基类为CDialog。
4、在MFCDLL.cpp中(因创建的工程为MFCDLL)添加接口函数:
extern "C" __declspec(dllexport) void Show()
{
AFX_MANAGE_STATE(AfxGetStaticModuleState());
CTest test;
test.DoModal ();
}
别忘了在文件中添加: #include "Test.h":),大功告成,编译吧!
5、用VC新建一对话框工程,在一按钮点击事件中添加如下代码:
typedef void (WINAPI * TESTDLL)();
HINSTANCE hmod;
hmod = ::LoadLibrary ("mfcdll.dll");
if(hmod==NULL)
{
AfxMessageBox("Fail");
}
TESTDLL lpproc;
lpproc = (TESTDLL)GetProcAddress (hmod,"Show");
if(lpproc!=(TESTDLL)NULL)
(*lpproc)();
FreeLibrary(hmod);
修改mfcdll.dll的文件位置
2、添加一对话框资源到工程中,从菜单中选择Insert->Resource,添加一“Dialog”
选择“New”,至此对话框已添加到DLL工程中。
3、为对话框添加一新类,如:CTest,基类为CDialog。
4、在MFCDLL.cpp中(因创建的工程为MFCDLL)添加接口函数:
extern "C" __declspec(dllexport) void Show()
{
AFX_MANAGE_STATE(AfxGetStaticModuleState());
CTest test;
test.DoModal ();
}
别忘了在文件中添加: #include "Test.h":),大功告成,编译吧!
5、用VC新建一对话框工程,在一按钮点击事件中添加如下代码:
typedef void (WINAPI * TESTDLL)();
HINSTANCE hmod;
hmod = ::LoadLibrary ("mfcdll.dll");
if(hmod==NULL)
{
AfxMessageBox("Fail");
}
TESTDLL lpproc;
lpproc = (TESTDLL)GetProcAddress (hmod,"Show");
if(lpproc!=(TESTDLL)NULL)
(*lpproc)();
FreeLibrary(hmod);
修改mfcdll.dll的文件位置
相关文章推荐
- MFC程序调用Dll中的对话框资源
- 关于如何调用mfc带资源对话框的dll的简单演示
- 资源MFC DLL的制作[在DLL中封装MFC对话框]
- wpf中调用w32的mfc dll 对话框
- 在VC.net MFC对话框中调用C#组件
- 用MFC写对话框形式的DLL并用程序进行调用方法
- 控制台应用程序调用MFC DLL产生的对话框,解决对话框dlg.DoModal报错问题
- VC 纯资源DLL制作及调用
- VC 纯资源DLL制作及调用
- MFC之dll中调用对话框
- VS2010上MFC项目出现 \VC\bin\rcdll.dll 无法找到资源编译器
- 2007.3.7--C++学习日记--MFC--用VC调用Shell中的目录浏览对话框
- vc2003编译器给MFC对话框导入位图资源无反应
- 使用vc封装纯资源dll及调用
- ATL写的DLL中调用MFC对话框
- vc++.net的mfc做dll或调用都类似vc6
- MFC调用其它DLL的资源中包含自定义控件,显示不正常的解决方法
- 【VC MFC开发】Dll 中对话框的控件无法接受到按键消息的解决办法
- ATL写的DLL中调用MFC对话框
- exe调用dll中的对话框防资源冲突解决之道