我有一个“带有调试信息的发布”非托管 c++ .exe(使用 VS2005 构建)部署到另一台 PC 上,.exe 和 .pdb 在同一个文件夹中。
当我尝试从 VS2005 本地或远程从我的开发 PC 附加到进程时,我的所有断点都被禁用。我没有收到任何警告/错误弹出窗口,这让我认为正在找到 PDB 文件,但没有被视为“好”。这是正确的解释吗?我想如果它看不到 PDB,我会得到一个“找不到调试信息”弹出窗口。
有没有人知道什么是错的?
我有一个“带有调试信息的发布”非托管 c++ .exe(使用 VS2005 构建)部署到另一台 PC 上,.exe 和 .pdb 在同一个文件夹中。
当我尝试从 VS2005 本地或远程从我的开发 PC 附加到进程时,我的所有断点都被禁用。我没有收到任何警告/错误弹出窗口,这让我认为正在找到 PDB 文件,但没有被视为“好”。这是正确的解释吗?我想如果它看不到 PDB,我会得到一个“找不到调试信息”弹出窗口。
有没有人知道什么是错的?
检查输出窗口 - 它应该告诉您在调试器附加时是否找到了调试符号。
断点是否标有黄色感叹号三角形?这可能是由于 PDB 与您使用的源版本不对应。右键单击断点并选择允许源代码不同的选项(或重建可执行文件)
高温高压
塞布
我最好的猜测是 Visual Studio 找不到 PDB 文件引用的源代码。我现在无法查看,但我认为您可以在这些情况下手动指定源代码的位置(我目前没有可用的 Visual Studio)。
PDB 正在生成,但另一个编译器设置意味着其中没有放入任何有用的东西!