我想调试在Visual Studio中的应用程序,但我只有1类的源代码。 我只需要通过一步在该文件中单一的功能,但我不明白我需要做的。 我想的步骤通常是这样的:
- 打开VS文件
- 在“符号”(.PDB文件)加载
- 附加到正在运行的进程
我知道该怎么做#1和#3,但我并不怎么办#2没有.PDB文件。 是否有可能生成.PDB文件为了使这个工作? 谢谢!
我想调试在Visual Studio中的应用程序,但我只有1类的源代码。 我只需要通过一步在该文件中单一的功能,但我不明白我需要做的。 我想的步骤通常是这样的:
我知道该怎么做#1和#3,但我并不怎么办#2没有.PDB文件。 是否有可能生成.PDB文件为了使这个工作? 谢谢!
您需要* .pdb文件(步骤2,从您的文章),这些文件包含源代码和编译的程序集之间的映射。 所以,你的一步是正确的。 如果源文件与原始文件,设置检查标记差异“允许的源代码是从原来的版本不同”,在BP的属性对话框。
断点和跟踪在Visual Studio
如果你没有PDB文件,你可以尝试使用反编译你的项目Reflector.FileDisassembler或FileGenerator对于反射器 。 他们可以重新编译这些文件得到PDBS
也看看Deblector -调试插件的反射器。
你需要一个属于你试图调试应用程序的符号文件(.PDB)文件。
MSDN:PDB文件
Visual Studio调试器使用的路径,PDB在EXE或DLL文件找到project.pdb文件。 如果调试器找不到在该位置的PDB文件,或者如果路径无效,例如,如果该项目被移动到另一台计算机,调试器搜索包含EXE文件的路径,然后在选项对话框中指定的符号路径。 该路径一般是在符号节点的调试文件夹中。 调试器将不会加载一个PDB不二进制正在调试匹配。
符号文件是.pdb文件。 如果地方,旁边exectuable,将加载符号,并指向源文件。
在你的情况“符号”是指您要调试程序集PDB文件。 调试器不要求你把所有的来源,只是你有匹配的PDB。 组件的构建过程中产生的PDB,并没有你不幸不能创建一个在事后。 如果你没有PDB,你需要在一个较低的水平,那么源代码进行调试。
如果你建立你的机器上装配,然后当您将符号会被发现。 在这种情况下,刚刚设置的源断点,采取一切必要使代码运行,你会命中断点。
如果您没有建立它,你需要找到组装的PDB。 在调试/视窗/模块中发现的模块窗口通常可以通过告诉你在整个过程中与版本信息和时间戳沿着组件的帮助。
您需要在情况下,这些信息中可能有一集的多个版本(比如把许多人每晚构建,还是从持续集成在过去的20名左右者版本)。
希望帮助。