解决:开启了debug但是Error: debugging information for 'myproject.exe' cannot be found or does not match. No symbols loaded.

本文介绍了解决Visual Studio调试过程中出现的符号文件未加载问题的方法。通过删除.suo文件并重启VS,成功解决了'myproject.exe'调试信息找不到或不匹配的问题。
部署运行你感兴趣的模型镜像

原文地址:http://www.cnblogs.com/roahnluo/archive/2009/03/15/1412503.html

感谢~有用~二楼的回复没试过~很想知道那个选项啥意思~

Error: debugging information for 'myproject.exe' cannot be found or does not match. No symbols loaded.

今天调试一C++程序,按下F5,老是弹出一对话框显示信息:debugging information for 'myproject.exe' cannot be found or does not match. No symbols loaded. 翻译成中文大概就是:不能找到'myproject.exe' 的调试信息或者调试信息不匹配。符号文件未加载。

起初,我以为是没有生成.pdb文件的缘故,于是,我右击项目文件,点击属性,展开配置属性节点,展开C/C++节点, 点击了General后把Debug Information Format设置为:Program Database for Edit & Continue(/ZI). 跟着,又检查了其它选项,并且确信在项目文件的Debug文件夹下生成了相应的.pdb文件。

可是做了这些,还是没用。仍然弹出那个该死的对话框。

我于是另外新启动了一个VS实例,新建了一个简单的工程,按下F5, 调试没问题,嘿,这问题到底出在哪儿呢??

然后,我心想,你丫狠!看来我得来点比你更狠的,于是乎,我干脆运行咱的.exe文件,然后单击Visual Studio 的Tools菜单,选择Attach to process..., 并找到我的应用程序,还是没用!!!!我要发疯了!!!!

关键时刻咱得保持冷静!!!!分析下!

第一,我这个工程是前几天做过的。

第二,.pdb文件有,手动加载文件也试过。不过没用。

第三,新建一个项目调试,没问题。

脑袋里突然冒出:是不是.suo文件在作怪??

------解决方案-----

1. 关闭掉Visual Studio 实例。

2. 找到解决方案下的.suo文件并删除之。

3. 重新启动Visual Studio,或者直接双击.sln文件打开

4. 成功调试程序!

后来意识到这是Visual Studio非常严重的问题。因为.suo貌似非常容易损坏,但是它里面包含了许多调试信息,包括项目的打开文件列表、所有的断点、以及监视窗口中所有的内容。

可以运行如下命令来删除掉该文件:del /f /a:h /s *.suo

希望对遇到该类问题的朋友有所帮助!!欢迎提出问题讨论!

 

posted @ 2009-03-15 16:52 Roahn Luo 阅读(2107) 评论(2) 编辑 收藏

 

  回复  引用  查看    
#1楼 2009-03-15 22:57 | JesseZhao       
我最近使用c++写程序,有时候你调试的时候跟不进去
可能是你在编译的时候选择了优化,
这样生成的调试信息在调试的时候就不匹配了

  回复  引用    
#2楼 2009-06-13 02:21 | sdf[未注册用户]
right click on your preject, select properties, chose debuggin tab on the left column, and change the debug type to "manage only"

您可能感兴趣的与本文相关的镜像

AutoGPT

AutoGPT

AI应用

AutoGPT于2023年3月30日由游戏公司Significant Gravitas Ltd.的创始人Toran Bruce Richards发布,AutoGPT是一个AI agent(智能体),也是开源的应用程序,结合了GPT-4和GPT-3.5技术,给定自然语言的目标,它将尝试通过将其分解成子任务,并在自动循环中使用互联网和其他工具来实现这一目标

### 解决DMP文件符号加载失败问题 在调试过程中,如果遇到 `.dmp` 文件的符号无法加载的问题,通常是因为符号文件(`.pdb`)未正确配置或缺失。以下是可能导致此问题的原因及解决方案: #### 1. 符号路径配置不正确 确保符号路径已正确配置到调试工具中。Visual Studio 或 WinDbg 等工具需要明确指定符号文件的位置。可以通过以下方式设置符号路径[^1]: - 在 Visual Studio 中,转到 **Tools > Options > Debugging > Symbols**。 - 添加符号文件所在的目录或使用 Microsoft 的公共符号服务器:`https://msdl.microsoft.com/download/symbols`。 #### 2. 缺少正确的符号文件 如果目标应用程序的符号文件不存在,则会导致加载失败。开发人员需要确保生成的 `.pdb` 文件与对应的二进制文件一起保存。此外,可以尝试从 Microsoft 公共符号服务器下载通用符号文件[^2]。 #### 3. 版本不匹配 符号文件和二进制文件之间的版本不匹配也会导致加载失败。例如,如果 `.exe` 文件被重新编译但符号文件未更新,则会出现此问题。检查 `.dmp` 文件中的模块版本,并确保符号文件与此版本一致[^3]。 #### 4. 权限问题 某些情况下,符号文件可能由于权限限制而无法访问。确保调试工具具有足够的权限访问符号路径中的文件[^4]。 #### 5. 使用适当的调试工具 选择适合的调试工具也很重要。对于 `.dmp` 文件,推荐使用 WinDbg 或 Visual Studio。WinDbg 提供了更强大的符号解析功能,特别是在处理系统级崩溃时[^5]。 ```python # 示例代码:通过 Python 调用 WinDbg 分析 DMP 文件 import subprocess def analyze_dmp(dmp_file, symbols_path): command = f"windbg -y {symbols_path} -z {dmp_file}" result = subprocess.run(command, shell=True, capture_output=True) return result.stdout.decode() # 调用函数 output = analyze_dmp("example.dmp", "srv*c:\\symbols*https://msdl.microsoft.com/download/symbols") print(output) ```
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值