您当前的位置: 首页 >  c#

DS小龙哥

暂无认证

  • 1浏览

    0关注

    679博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

VS2017下创建C++动态库导出符合并完成调用测试(DLL可供C#调用)

DS小龙哥 发布时间:2021-05-24 15:52:09 ,浏览量:1

一、环境介绍

VS版本:  VS2017

编程语言: C++

二、功能介绍

使用VS2017项目模板创建C++动态库生成工程,生成动态库。然后再创建一个C++工程调用动态库完成测试。

三、创建动态库

 工程创建之后,VS会自动生成一个示例模板;下面截图里是将VS自动生成的模板代码给删除掉了,添加自己编写了2个测试函数。

#ifdef DLLLIBRARY_EXPORTS
#define DLLLIBRARY_API __declspec(dllexport)
#else
#define DLLLIBRARY_API __declspec(dllimport)
#endif

EXTERN_C DLLLIBRARY_API char* Version(void);
EXTERN_C DLLLIBRARY_API int sum(int a, int b);

static char version_str[] = "v20210524";

// 获取版本号
DLLLIBRARY_API char* Version(void)
{
	return version_str;
}

// 求和
DLLLIBRARY_API int sum(int a, int b)
{
	int c = a + b;
	return c;
}

写好之后,编译生成动态库。

生成的库文件在解决方案目录下:

四、创建C++工程调用动态库

将第一步生成的库文件xxx.lib拷贝到当前测试工程目录下:

编写调用库的测试代码:

#include 
#pragma comment(lib, "DLLLIBRARY.lib")

extern "C"
{
	extern __declspec(dllexport) char* Version(void);
	extern __declspec(dllexport) int sum(int a, int b);
};

using namespace std;
int main()
{
	int c = sum(12, 34);
	cout             
关注
打赏
1664009229
查看更多评论
0.0440s