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?
此外,这些文件包含的原始源代码有多少提示?
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:
- 所有非公共类型,接口,结构,类
- 函数中的局部变量
- 源代码中的相关代码和相应行号的源文件名。
这些组合使得逆向工程非常容易码。
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屋!