1、从“文件”菜单中,选择“新建”,然后选择“项目…”.
2、从“项目类型”窗格中选择“Visual C++”下的“Win32”.
3、从“模板”窗格中,选择“Win32 控制台应用程序”.
4、为项目选择一个名称,如“MathFuncsDll”,并将其输入“名称”字段.为解决方案选择一个名称,如“DynamicLibrary”,并将其输入“解决方案名称”字段胡亏源.
5、按“确定”启动 Win32 应用程序向导.在“Win32 应用程序向导”对话框的“概述”空裂页中,按“下一步”.
6、从“Win32 应用程序向导”中的“应用程序设置”页中,选择“应用程序类型”下的“裤态DLL”(如果可用),或者选择“控制台应用程序”(如果“DLL”不可用).某些版本的 Visual Studio 不支持使用向导创建 DLL 项目.您可以稍后对此进行更改,以将项目编译为 DLL.
7、从“Win32 应用程序向导”的“应用程序设置”页中,选择“附加选项”下的“空项目”.
vs2010的mfc 程序已经做好需要将 MFC 中的类 封装 为一个Dll并导出。
将 MFC 中的类 封装 为一个Dll并导出 封装 Dll类 打开VC6.0,file->new->Projects-> MFC AppWizard [dll],输入Project name 为pipeDll。
下一步,选择 MFC Extension DLL(using shared MFC DLL),features选择. MFC 应用 程序 打包。
从库的创建到调用过程。MFC封装功能成动态库相关问题汇总记录
基本的创建过程可以从很多地方查询得到,这里主要记录在VS2017 Debug X86开发过程中发生的各种异常问题解决。
无法定义 dllimport 实体 Password。
使用AFX_EXT_CLASS定义声明类。
注意在项目属性->C/C+±>预处理器中,春绝预处理器定义_AFXEXT;删除_USRDLL。
调用动态库显示动态库窗体得到句柄为空且无法显示窗体。
_USRDLL:静态方式链接MFC库,这样子的话本身MFC的库中带有_DllMain函数的定义。
_AFXDLL:动态方式链接到配森指MFC库,这样子的话,调用侧培配dll需要自己定义_DllMain入口函数。
可知需要定义_DllMain入口函数,在此我创建dllmain.cpp文件来定义_DllMain入口函数。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)