0

当我尝试远程调试 exe 时,我观察到 Visual Studio 2008 的奇怪行为。

我有一个包含多个项目的解决方案。因此,每个项目都被编译成一个库并链接到我的主项目(点击运行按钮时启动的项目)。Visual Studio 配置为生成一个名称与我的 exe 文件完全相同的 pdb 文件。此外,VS 会为每个项目生成一个 vc90.pdb 文件。

现在,当我从 Visual Studio 启动它或将 Visual Studio 附加到我的 exe 的本地运行进程时,我可以在本地调试我的 exe。但是当我在另一台机器上运行我的 exe 时,VS 显示出一种奇怪的行为。在这种情况下,Visual Studio 会在除主项目之外的所有项目的断点处正确停止。对于主项目中的每个断点,VS 表示它无法加载文档的符号。但是,模块视图显示 VS 加载了正确的 pdb 文件。

有谁知道远程调试的应用程序和本地连接的调试器之间有什么不同。特别是因为主要项目是唯一导致问题的项目......

我的环境:

  • 视觉工作室 2008 SP1
  • 主机:Windows 7 64 位
  • 远程机器:Windows XP 32 位
4

1 回答 1

1

我发现我错过了为所有其他项目完成的主要项目的设置。我必须将“项目 -> 属性 -> C/C++ -> 常规 -> 调试信息格式”设置为“程序数据库 (/Zi)”。

于 2013-08-06T11:47:05.963 回答