您现在的位置:主页 > 技术中心 > 编程开发 > c#

.NET应用程序调试—原理、工具、方法(18)

来源:未知 责任编辑:责任编辑 发表时间:2015-05-17 16:44 点击:

如果进程是以32位方式运行的,那么这个时候获取出来的dump文件是不好分析的,此时应该使用调试器工具进行dump的获取。获取出来的dump文件和分析机器上的调试器环境不一致的情况下会出现如下几个错误。

图20:

wKiom1Q-e1zyOs2OAAK04H2pzBo115.jpg

这个问题是未能加载正确版本的mscordacwks.dll .NETDAC调式组件。

图21:

wKioL1Q-e6fgKbGXAABKThccWrU202.jpg

这个问题是当前SOS.dll和.NET程序所使用的.NET版本不一致,这个问题的出现一般都是我们通过.load xx\xx\SOS.dll,手动方式加载的。

图22:

wKiom1Q-e3_QzaFRAAJBahVj_Q0040.jpg

这个问题出现有好几种可能性,对常见的问题就是未能使用正确的方法或者工具获取dump文件,导致dum文件获取的机器和本地调试的机器整个环境不一致。

9.总结

本篇文章分享我对.NET应用程序调试方面学习和实践的一些经验,供广大博友参考。如果想系统的学习一下这方面的知识可以参考《.NET高级调试》一书,此书非常底层,对.NET运行时原理讲的很透彻,可以作为深入学习.NET的一门参考书。


作者:王清培

出处:http://wangqingpei557.blog.51cto.com/

发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片

推荐热点

  • 用C#制作屏幕捕获程序
  • .NET程序员项目开发必知必会—Dev环境中的集成测
  • 遍历ArrayList易犯错误
  • C#对XML操作:一个处理XML文件的类(1)
  • .NET简谈反射(动态调用)
  • 使用C#编写LED样式时钟控件
  • DataList嵌套问题 如何删除内层子DataList的记录
  • 怎样用C#实现完整文档打印功能
  • .NET简谈自定义事务资源管理器
?? - ?? - ÝřŝžľŘÝź - TAGąęÇŠ - RSSśŠÔÄ - ??
Copyright © 2004-2024 上海卓卓网络科技有限公司