.NET dll文件中的PDB文件是什么?它有什么作用?通常人们在部署时会删除此文件,只将dll文件保存在lib文件夹中,但似乎什么都没有发生,一切都很好...
sg24os4d1#
程序数据库文件与增量链接无关,项目状态!PDB文件用于将EXE与SOURCESMap。它们用于调试和发布二进制文件。Here an article解释了可执行映像与其PDB文件之间的绑定链接
eblbsuwk2#
PDB文件存储允许您调试应用程序的信息。通常不部署这些文件的原因是通常不需要提供它们。如果您想调试应用程序,您可以始终从目录、网络共享或符号服务器加载它们。
avwztpqn3#
参见http://www.wintellect.com/CS/blogs/jrobbins/archive/2009/05/11/pdb-files-what-every-developer-must-know.aspx和https://stackoverflow.com/a/72190/150984
ktca8awb4#
在.NET中,它主要只保留局部变量的符号信息(以及IIRC的范围信息)。
g2ieeal75#
程序数据库(PDB)文件保存调试和项目状态信息,这些信息允许程序的调试配置的增量链接。当您使用/ZI或/Zi编译C/C程序或使用/debug编译Visual Basic/C#/JScript .NET程序时,将创建PDB文件。每次创建OBJ文件时,C/C编译器将调试信息合并到VCx0.PBD中。插入的信息包括类型信息,但不包括诸如函数定义之类的符号信息。因此,即使每个源文件都包括诸如,来自那些头的typedef只存储一次,而不是在每个OBJ文件中。
5条答案
按热度按时间sg24os4d1#
程序数据库文件与增量链接无关,项目状态!PDB文件用于将EXE与SOURCESMap。它们用于调试和发布二进制文件。Here an article解释了可执行映像与其PDB文件之间的绑定链接
eblbsuwk2#
PDB文件存储允许您调试应用程序的信息。
通常不部署这些文件的原因是通常不需要提供它们。如果您想调试应用程序,您可以始终从目录、网络共享或符号服务器加载它们。
avwztpqn3#
参见http://www.wintellect.com/CS/blogs/jrobbins/archive/2009/05/11/pdb-files-what-every-developer-must-know.aspx和https://stackoverflow.com/a/72190/150984
ktca8awb4#
在.NET中,它主要只保留局部变量的符号信息(以及IIRC的范围信息)。
g2ieeal75#
程序数据库(PDB)文件保存调试和项目状态信息,这些信息允许程序的调试配置的增量链接。当您使用/ZI或/Zi编译C/C程序或使用/debug编译Visual Basic/C#/JScript .NET程序时,将创建PDB文件。每次创建OBJ文件时,C/C编译器将调试信息合并到VCx0.PBD中。插入的信息包括类型信息,但不包括诸如函数定义之类的符号信息。因此,即使每个源文件都包括诸如,来自那些头的typedef只存储一次,而不是在每个OBJ文件中。