情况:
当我在调试模式下构建DEP,然后我调试项目A时,我仍然可以从DEP进入代码,即使我在DEP的输出文件夹中看不到pdb文件。我想知道如何调试DEP是可能的。我认为总是需要pdbs才能进行调试。或者,在调试模式下构建的dll是否包含足够的调试信息?
答案 0 :(得分:8)
每个程序都是可调试的。调试器最基本的能力是单步处理器指令,查看处理器寄存器和检查内存。机器的灵魂。没有PDB你永远不会得到的是能够查看源代码,单步语句和检查命名变量。实际上,在没有PDB的情况下修复错误是非常不切实际的。
如果您确实看到源代码,那么这并不奇怪,调试器非常擅长定位PDB。如果您没有自己复制,那么调试器可以在项目的obj\Debug
目录中找到编译器所在位置的原始位置。该PDB的路径嵌入在可执行文件中。你可以找到它是如何找到它的,使用Debug> Windows>单击模块,右键单击DLL并选择符号加载信息。它向您显示调试器在哪里寻找PDB。