testdll3.h
#ifndef TESTDLL3
#define TESTDLL3
//#define API __stdcall
#define API __cdecl
#ifdef __cplusplus
extern "C" {
#endif
__declspec(dllexport) int API add(int x, int y);
#ifdef __cplusplus
}
#endif
#endif // !TESTDLL3
testdll3.cpp
#include "testdll3.h"
int API add(int x, int y)
{
return x + y;
}
查看导出符号(省略了不重要信息)
dumpbin /exports testdll3.dll
1 0 000110E6 add = @ILT+255(_add)
另一种简便的方法是使用def文件
testdll.def
LIBRARY
EXPORTS
add
testdll3.h
#ifndef TESTDLL3
#define TESTDLL3
int add(int x, int y);
#endif // !TESTDLL3
testdll3.cpp
#include "testdll3.h"
int add(int x, int y)
{
return x + y;
}
编译时添加参数 /DEF:"testdll.def" 即可,这种方式相对前者更简洁。