具有依赖关系的动态库addDll.dll和squareSumDll.dll

本文创建两个动态库addDll.dll  , squareSumDll.dll   动态库addDll.dll有一个函数 int add(int a, int b),  squareSumDll.dll中有一个函数int squareSum(int a, int b), 函数squareSum会调用函数add。废话不多说,正文正式开始:

创建一个类型为DLL的空项目addDll

 添加头文件,add.h,此时可以看到DLLAPI的含义是_declspec(dllimport)

 选中项目-》右键,选属性-》配置属性-》C/C++ -》预处理器-》预处理器定义。在预处理器定义里,增加一条_DLLAPI

 此时可以看到DLLAPI的含义是_declspec(dllexport)

 添加源文件

 选中工程,右键,选择生成,可以看出,已经生成了动态库文件addDll.dll

 

 此时可以看出,addDll里面的add函数已经导出

 下面,再创建一个动态库squareSumDll, 还选择空项目。这个动态库将会调用add.dll里面的add函数。将上一步里生成的add.dll,放到新的工程squareSumDll目录下面

 

添加头文件,并且像上一步一样,定义 _DLLAPI

添加源文件

 选中工程,右键,选择生成

 可以看到动态库squareSumDll已经生成,并且squareSum函数已经导出

 

 

 测试动态库squareSumDll.dll

 创建一个控制台应用程序,空项目

 

 把上面创建好的动态库squareSumDll.dll放到工程目录下面

 添加源文件,点击生成

 将addDll.dll放入生成的Debug文件夹下,和可执行文件是同一个文件夹,然后就可运行了

 选中工程testSquareSum,右键-》调试 -》启动新实例,就可以运行了

 

猜你喜欢

转载自blog.csdn.net/yanzhenxi/article/details/127354853