dll导出及调用傻瓜式教程
1.dll库(被调用)项目生成
- 新建一个项目
在名称处修改项目名称,这里命名为CNI
- 在CNI项目中新建一个CNI.h头文件,并输入以下代码
#pragma once
#ifndef __CNI_H__
#define __CNI_H__
extern "C" int _declspec(dllexport) add(int x, int y);
#endif
- 在CNI项目中新建一个CNI.cpp源文件,代码如下:
#include "CNI.h"
int add(int x, int y)
{
return x + y;
}
- 运行生成dll文件和lib文件
需要先将项目属性改成dll项目
此时再点击本地Windows调试器
运行,x64代表64位系统,x86代表32位系统,这里根据需要选择。
2. 使用dll库的项目生成
-
跟上一个项目一样,建立一个新项目,这里命名为"useDLL",然后将上一个CNI项目中生成的dll,lib,和h文件都放在工程目录下,也可以将dll和lib文件放在lib文件夹下,h文件放在include中,但是需要添加路径,这里不做详细介绍,这里采用将其放在工程目录下的方式,更简单。
-
在useDLL项目中添加源文件test.cpp,导入CNI.h文件,加载CNI.lib文件,代码如下:
#include "CNI.h"
#pragma comment(lib,"CNI.lib")
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
int a=6,b=3;
int res=add(a,b);
cout<<res<<endl;
system("pause");
return 0;
}
3. 补充
工程(.vcxproj)目录指的是:
解决方案(.sln)目录指的是: