您如何在 Visual Studio 2013 年的每个版本中生成新的 PDB 文件?
How do you generate new PDB files every build in Visual Studio 2013?
问题:
开发人员希望在每次构建开始时创建新的程序数据库文件 (PDB)。
什么场景:
C++热插拔,即时调试,主程序执行代码的DLL代码插件
解法:
- 打开您的代码项目。
- 打开项目属性。
- 在左窗格中,展开 配置属性 节点。
- 展开链接器节点。
- 单击调试节点。
- 在右窗格中,找到 生成程序数据库文件 条目。
将值替换为:
$(OutDir)$(目标名称)-$([System.DateTime]::Now.ToString("HH_mm_ss_fff")).pdb
点击应用然后确定。
要启动 C++ 热交换(即时调试)模式:
- 在 Visual Studio 2013 年将两个项目添加到新解决方案中。
- 使其中一个项目在构建时生成一个DLL。
- 创建您的程序。
- 对于 DLL,编写一个在程序运行时不断被调用的函数 运行。将函数导出到 DLL。
- 设置 DLL 项目为每次构建生成新的 PDB 文件。
- 编译并构建所有项目。
- 在不调试的情况下启动程序 (CTRL+F5)。
- 更新导出的 DLL 函数。
- 构建一次DLL项目。 (CTRL+SHIFT+B).
- 您的程序应在第二次构建后立即更新函数的执行。
HTML5 version of the GIF here.
注:
您可以将以下值添加到项目属性中,以摆脱过多的 PDB 文件。这可以添加到 Pre-Build 事件 Build Events 节点中的条目。
del "$(OutDir)*.pdb"
问题:
开发人员希望在每次构建开始时创建新的程序数据库文件 (PDB)。
什么场景:
C++热插拔,即时调试,主程序执行代码的DLL代码插件
解法:
- 打开您的代码项目。
- 打开项目属性。
- 在左窗格中,展开 配置属性 节点。
- 展开链接器节点。
- 单击调试节点。
- 在右窗格中,找到 生成程序数据库文件 条目。
将值替换为:
$(OutDir)$(目标名称)-$([System.DateTime]::Now.ToString("HH_mm_ss_fff")).pdb
点击应用然后确定。
要启动 C++ 热交换(即时调试)模式:
- 在 Visual Studio 2013 年将两个项目添加到新解决方案中。
- 使其中一个项目在构建时生成一个DLL。
- 创建您的程序。
- 对于 DLL,编写一个在程序运行时不断被调用的函数 运行。将函数导出到 DLL。
- 设置 DLL 项目为每次构建生成新的 PDB 文件。
- 编译并构建所有项目。
- 在不调试的情况下启动程序 (CTRL+F5)。
- 更新导出的 DLL 函数。
- 构建一次DLL项目。 (CTRL+SHIFT+B).
- 您的程序应在第二次构建后立即更新函数的执行。
注:
您可以将以下值添加到项目属性中,以摆脱过多的 PDB 文件。这可以添加到 Pre-Build 事件 Build Events 节点中的条目。
del "$(OutDir)*.pdb"