您的位置:首页 > 其它

《Advanced .NET Debugging》 读书笔记 Listing 4-4: 调试Assembly加载失败的程序

2010-12-29 23:19 489 查看




程序在执行RunInDedicated()方法时会失败,原因在于执行h.Unwrap()时需要读取EntityUtil定义的程序集,但是CreateDomain()方法创建domain的时候指定的ApplicationBase为C:\\Windows\\system32。

1. 在WinDbg里载入AppDomain.exe.

2. 揿2执行RunInDedicated()方法时,出错。

3. 执行 .loadby sos.dll mscorwks

4. 执行 kb

5. 此时可以看到mscorwks抛出的异常:





6. 执行 !PE 023886d8





7. 但是此时不知道究竟在什么路径下缺失了什么assembly,此时可以启用fuslogvw,其位置在c:\Program Files(x86)\Microsoft.NET\SDK\v2.0\Bin ,进行设置。





8. 在注册表内添加相应键值LogFailures = 1





9. 此时重现错误,就是可找到AppDomain是在哪一个路径下没找到相应的Assembly的:



内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐