C#发布版本仍然有.pdb文件

我想在C#中部署我的应用程序的发行版本。

当我使用Release配置构建时,仍然可以看到生成了.pdb文件,这意味着我的应用程序仍可以调试。 这也意味着某些调试信息存在于我的代码中,使其稍微放慢一点。

如果这是真的,我怎样才能完全抑制在二进制文件中产生的任何调试信息? 你是否也知道释放.pdb的原因? Release配置检查了Optimize code ,只定义了TRACE常量,而不是DEBUG

感谢您的协助。


如果您想禁用pdb文件生成,则需要在单击"Advanced..." Build选项卡下部的"Advanced..."按钮后,使用项目属性中的"Advanced build settings"对话框。

Output - Debug info:None版本构建配置,并且不会生成pdb文件。


默认是为发布版本生成PDB。 这是一个功能,你不应该禁用它。 生成PDB意味着您可以在调试时获得更多信息。 代码的性能不会受到PDB文件的影响。


您可以在Build - > Advanced ... - > Debug info:下的项目属性中控制pdb / symbol的生成。 选项是:

  • (没有符号信息)
  • 完整 (将生成一个.pdb,并在程序集中嵌入一些符号信息)
  • 仅限pdb (将生成.pdb,但程序集不受影响)
  • 有关更多信息,请参见http://msdn.microsoft.com/en-us/library/8cw0bt21%28VS.80%29.aspx。

    强烈建议你选择pdb-only选项, 而不是 none选项,因为它仍然给你一些符号信息而不影响程序集 - 你可能会发现这是你在发布版本上的当前设置。

    链接地址: http://www.djcxy.com/p/27955.html

    上一篇: C# release version has still .pdb file

    下一篇: Debug.Assert() has stopped working in my project