在编写程序的时候,为了方便我们经常会把一个程序分成很多个模块,然后用Dll来组装编写。
在VS中编写Dll并在exe中使用首先:
根据需要新建一个Dll工程项目,把Dll项目附加进EXE项目(根据需要建立MFC DLL 还是是win32的DLL)
建立完成后我们在Dll项目的头文件中添加一个export.h头文件输入以下代码:
#ifdef MOFLLDLL_API
#else
#define MOFLLDLL_API __declspec(dllexport)
#endif
MOFLLDLL_API void GameRun();
在MFCLibrary1.h中添加以下代码:
#ifdef MOFLLDLL_API
#else
#define MOFLLDLL_API __declspec(dllexport)
#endif
接着在MFCLibrary1.cpp中添加以下代码:
#ifdef _DEBUG
#define new DEBUG_NEW
#endif
MOFLLDLL_API void GameRun()
{
AfxMessageBox(_T(“123”));
}
这样我们的dll就处理完毕了。
1.接下来我们把 export.h 文件复制一份放到EXE项目下,然后在EXE项目里添加此文件(这里有个技巧,就是把Dll下的 export.h 先移除,然后从EXE下复制到Dll下,这下修改的export.h 文件是同步的,你就不再需要每次一增加一个新函数就要同时去修改EXE下的export.h )
2.在EXE项目的依赖项里面添加MFCLibrary1.lib
3.把MFCLibrary1.lib复制到EXE项目下 (也可以利用修改lib生成路径去设置,避免修改Dll带来不断覆盖旧文件的重复操作 VS修改lib生成路径方法:http://blog.csdn.net/nonecode/article/details/28364809)
4.在EXE工程的stdafx.h中添加#include "export.h
接下来你就可以在EXE工程中调用Dll的导出函数了!