• 1180阅读
  • 1回复

41.windbg-调试技巧(解决Type information missing error for) [复制链接]

上一主题 下一主题
离线啊冲
 

只看楼主 倒序阅读 使用道具 楼主  发表于: 2016-02-13



今天用vc6时,发现有些函数用x显示不了:


[cpp] view plain copy
  1. 0:000> x ThisCall!Cat::*  
  2. Type information missing error for Cat::Fun0  

歪招:用bm直接下断点:



[cpp] view plain copy
  1. 0:000> bm ThisCall!Cat::*  
  2.   1: 00401090 @!"ThisCall!Cat::Func1"  
  3.   2: 00401060 @!"ThisCall!Cat::Fun0"  
  4. 0:000> x ThisCall!Cat*  
  5. Type information missing error for Cat::Func1  
  6. Type information missing error for Cat::Fun0  

或者直接ln或u

解决方式:

VC编译器把类型信息存放在VCx0.PDB中,VC6是放在VC60.PDB中,对于VC6自己有时也会找不到这个文件。
对于WinDBG,没有简单的方法来从VC60.pdb这样的符号文件来加载符号
所以需要修改工程的link,把


改成/PDBTYPE:CON即可!你也可以直接把这个删除,默认就是把调试信息集成到<project>.pdb中!

[cpp] view plain copy
  1. 0:000> x ThisCall!Cat::*  
  2. 00401090 ThisCall!Cat::Func1 (MEAL)  
  3. 00401060 ThisCall!Cat::Fun0 (MEAL)  




顶0踩
善者 慈悲心常在 无怨无恨 以苦为乐
默认压缩密码www.hifyl.com
文件分享密码问题:http://www.hifyl.com/read-htm-tid-4444.html
离线v2680267313

只看该作者 沙发  发表于: 2016-04-30
用户被禁言,该主题自动屏蔽!
快速回复
限100 字节
如果您在写长篇帖子又不马上发表,建议存为草稿
 
上一个 下一个