关于Visual Studio使用过程中的一些操作记录

怎样生成和使用 .lib / .dll 库文件?

生成

  1. 新建 Win32 空项目
  2. 选择 DLL 空项目
  3. 配置属性
    1. 常规 - 配置类型 - 动态库 (.dll)
    2. C/C++ - 优化 - 使速度最大化 (/O2)
    3. 预处理器 - 预处理器定义 - [写入: 工程名_EXPORTS]
  4. 编写项目
  5. 在入口类头文件中将类的声明改为: class __desclspec(dllexport) name{ };
  6. 编译工程

注: 若入口类所在头文件包含自己写的其他头文件,则这些包含的类也应该用 __desclspec(dllexport) 修饰

使用

  1. 配置属性
    1. C/C++ - 常规 - 附加包含目录 - [写入: 入口类头文件所在目录]
    2. 链接器 - 常规 - 附加库目录 - [写入: 入口类 .lib 文件所在目录]
    3. 链接器 - 输入 - 附加依赖项 - [写入: 库名.lib]
  2. 将对应的 .dll 文件放到 .exe 同目录下
  3. 引入头文件,编写程序

怎样配置各文件生成路径?

  • dll 文件: 链接器 - 常规 - 输出文件
  • lib / exp 文件: 链接器 - 高级 - 导入库
  • pdb 文件: 链接器 - 调试 - 生成数据库文件

配置不生成 iobj / ipdb 文件: 链接器 - 优化 - 链接时间代码生成 - 使用链接时间代码生成 (/LTCG)
配置不生成 pdb 文件: 链接器 - 调试 - 生成调试信息: 否

调试时不进断点直接运行怎么办?

当前工程的调试不进断点

  1. 配置属性 - C/C++ - 常规 - 调试信息格式 - 程序数据库
  2. C/C++ - 优化 - 优化 - 已禁用
  3. 链接器 - 调试 - 生成调试信息 - 优化已便于调试

当前工程和 lib 库源码在同一个解决方案下调试不进入 lib 库源码的断点

  1. 将 lib 库源码的 pdb 文件和 lib 文件放在同一目录下
  2. 确定 lib 库和源码版本是否对应
  3. 在配置的其他路径下检查是否有旧版本的同名 lib 文件,有则删掉
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值