1. 创建DLL项目:
a.新建一个空的win32 DLL项目,添加一个简单的头文件和一个cpp文件:
这里,头文件位于该路径之下:
D:\Code\Demos\Test_Win32DLL_V1\Test_Win32DLL_V1
头文件和cpp文件内容分别是:
#pragma once
#include <string>
using namespace std;
#define DLLSPEC __declspec( dllexport)
namespace MyTestNamespace{
class DLLSPEC MyTestClass
{
private:
public:
int Add(int a,int b);
};
}
#include "MyTestHead.h"
using namespace MyTestNamespace;
int MyTestClass::Add(int a,int b)
{
return a+b;
}
比如生成到了该路径之下:
D:\Code\Demos\Test_Win32DLL_V1\Debug
2. 创建测试程序项目:
a.在当前解决方案项目下新增一个新的win32 控制台应用程序:
b.鼠标右击该项目工程名,选择【Properties】->【C/C++】->【General】->【Additional Include Directories】,加入DLL中的头文件路径(这里针对我们自己开发的DLL或者第三方给了我们头文件的情况):
c.再选择【Linker】->【Additional Library Directories】,加入刚刚生成DLL和Lib文件的路径:
d.接着在【Linker】->【Input】->【Dependencies】,填写lib名称(包含后缀名,有多个文件需要换行):
e.最后在stdafx.h中引入MyTestHead.h头文件,并且在main函数中写测试代码:
#include "stdafx.h"
using namespace MyTestNamespace;
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
MyTestClass* Test=new MyTestClass();
int result=Test->Add(100,12);
std::cout<<result<<endl;
delete Test;
return 0;
}
编译运行该程序:
调用DLL成功。
除了上述使用方法外,在不同的情况下还有不同的调用方式,详情请参考各大网络资源。