动态链接库生成与应用

在这个解决方案中,分别新建两个项目,其中在解决方案属性中,对启动项目进行操作。

动态链接库生成与应用_第1张图片

Test_xlog_dll表示 对动态链接库进行操作         (消费方)

Xlog_dll表示     产生动态链接库                        (生产方)

 

对xlog_dll配置

/*生产方*/

//dll输出设置

//常规 =》输出目录设置 ..\..\bin

//修改链接器= 常规 =》输出路径 $(OutDir)$(TargetName)_d$(TargetExt)

//

//lib输出路径设置

//链接器=》高级=》导入库 ..\..\lib\$(TargetName)_d.lib 

【能在对应文件路径中找到 lib dll文件】

1.

动态链接库生成与应用_第2张图片

2.

动态链接库生成与应用_第3张图片

 

3.

动态链接库生成与应用_第4张图片

 

另外对编译中的预处理器进行说明:XLOG_EXPORTS;

动态链接库生成与应用_第5张图片

#ifdef _WIN32

#ifdef XLOG_EXPORTS  //定义预处理器用于区分引用者是内部还是外部

#define XLOG_API __declspec(dllexport) //内部调用

#else

#define XLOG_API __declspec(dllimport//外部调用

#endif

#else

#define XLOG_API

#endif

其中XLOG_EXPORTS用于区分引用为内部引用 还是 外部调用。这里用的是内部调用,生成相应的dll lib文件。这时候可以点击生成解决方案[有错误也请忽略]!就可以发现bin文件夹有dll文件、lib文件夹由lib文件

动态链接库生成与应用_第6张图片

动态链接库生成与应用_第7张图片

动态链接库生成与应用_第8张图片

 

===============================================================================

 

对test_xlog_dll配置

    /*消费方*/

    //1. 找到函数声明 __declspec(dllimport) void TestLog()

    //设置c/c++ =》常规=》附加包含目录 ../xlog_dll

 

    //2. 找到函数定义 引入lib文件 (xlog_dll_d.lib)00

    //设置 链接器 常规= 附加包含库目录 ..\..\lib

    //输入=》附加依赖项 (xlog_dll_d.lib)

 

    //3. 执行载入dll文件(xlog_dll_d.dll

    //常规= 输出目录设置 ..\..\bin

    //调试= 工作目录 =..\..\bin

 

  1. 其实就是指定头文件#include

动态链接库生成与应用_第9张图片

2.

动态链接库生成与应用_第10张图片

动态链接库生成与应用_第11张图片

3.

动态链接库生成与应用_第12张图片

动态链接库生成与应用_第13张图片

完成动态链接库的设计!!!

 

 

 

你可能感兴趣的:(实战型)