多少信息PDB文件包含哪些内容? (C#/。NET) [英] How much information do pdb files contain? (C# / .NET)
问题描述
是明智的做法是重新分配PDB文件连同商业应用?
Is is wise to redistribute the pdb files along with a commercial application?
有时候,我使用的堆栈跟踪,以获取更详细的错误报告从部署的应用程序日志;可在此功能可以不依赖于这些文件实现的?
Occasionally, I'm using the stack trace to get a more detailed error reporting logs from the deployed applications; can this functionality be achieved without relying to those files?
此外,多少暗示原始出处code没有这些文件包含哪些内容?难道是更容易使用它进行逆向工程应用?
Also, how much hints of the original source code does these files contain? Would it be easier to reverse-engineer my application using it?
推荐答案
基本上,它增加了信息:
It basically adds information for:
- 在所有非公共类型,接口,结构,类
- 在函数的局部变量
- 在源文件名源$ C $ C相关code和相应的行号。
所有品牌相结合逆向工程极大地方便了当地code。
which all combined makes reverse engineering very easy for native code.
幸运的是,你可以创建你PDB文件的精简版本,它仅包含公共信息与 / PDBSTRIPPED 参数。
Luckily you can create a stripped down version of your PDB files which only contains public information with /PDBSTRIPPED parameter.
哦,你编辑添加C#/。NET,所以我不知道PDBSTRIPPED适用。但是.NET应用程序很容易逆向工程即使没有任何符号信息。我不会介意,包括他们在一个.NET项目。
Oh you edited to add C#/.NET, so I'm not sure if "PDBSTRIPPED" is applicable. However .NET applications are very easy to reverse engineer even without any symbol information. I wouldn't mind including them in a .NET project.
这篇关于多少信息PDB文件包含哪些内容? (C#/。NET)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!