我想使用远程调试。 我想调试的程序在机器上运行b。 Visual Studio在机器上运行a。远程调试时为什么没有加载符号?
计算机B上我有以下文件的文件夹:
- msvcr72.dll
- msvsmon.exe
- NatDbgDE.dll
- NatDbgDEUI.dll
- NatDbgEE.dll
- NatDbgEEUI.dll
如果您认为某些文件丢失了,您是否也可以描述它们通常位于何处?
在接下来的步骤中,我开始了msvsmon.exe
和我的程序在机器上。在机器a上,我启动了Visual Studio 2008和我的解决方案,其中编写了该程序。然后我选择“调试 - 附加到进程”。我选择了“远程传输(仅限本地无身份验证)”。我使用了正确的IP作为限定符,并采用了正确的过程(program.exe)。过了一会儿,发生在一个弹出式窗口中的以下信息:
未处理的异常在Program.exe文件0x7c812a7b:0xE0434F4D:0xe0434f4d
我可以继续进行或中断;继续时,异常会一再发生。所以我按了休息,并且发生了以下消息:
没有符号被加载用于任何调用堆栈帧。源代码无法显示。
调用堆栈是什么样的?可能没有加载符号,因为它在程序的内部引发了异常。唯一的其他问题是确保你在远程系统上拥有正确的exe。 – JeffFoster 2008-09-30 06:25:15
@Xelluloid:你能否提供屏幕显示你如何附加过程并证明pdb与dll一起位于同一个文件夹中?最后,你还可以提供一个MODULE窗口的屏幕(在你附加了进程之后,点击ctrl-> alt-> u并让我们看看哪些模块已经加载。 – 2008-11-17 03:13:20