源代码: 下载
一、 生成DLL
1. 新建DLL工程
生成DLL可以多种方法,这里介绍一种。在VS中,新建一个空的项目,选Win32 Console Application,新建完后修改工程属性:把生成EXE改为生成DLL
2. 源代码:
#include <iostream>
#include <windows.h>
using namespace std;
#ifdef __cplusplus // if used by C++ code
extern "C" { // we need to export the C interface
#endif
__declspec(dllexport) void output()
{
MessageBox(NULL, "hello world", "hello", 0);
}
#ifdef __cplusplus
}
#endif
3. 编译连接,生成dll.dll文件
二、 使用DLL
1. 新建工程
新建一个Win32 Console Application,选择空的工程。
2. 源代码:
#include <iostream>
#include <windows.h>
using namespace std;
void main()
{
HMODULE hMod = LoadLibrary("dll");
if (hMod)
{
FARPROC a = GetProcAddress(hMod, TEXT("output"));
if (a)
a();
else
cout<<"ERROR on GetProcAddress"<<endl;
FreeLibrary(hMod);
}
else
cout<<"ERROR on LoadLibrary"<<endl;
}
3. 将上面工程生成的dll.dll文件复制到此工程的目录下,保证源文件与DLL文件在同一目录下。如果生成的EXE文件要直接运行,则要保证EXE文件与DLL文件在同一目录下。
4. 编译连接,执行。