2009-04-17 91 views
0

如何查看由.net JITer生成的机器代码的反汇编?显示反汇编窗口菜单选项没有找到的地方。即使它的工具栏按钮也处于禁用状态。如果我记得正确的反汇编确实可以看到,但必须诉诸一些伎俩,不幸的是,我不记得那个伎俩是什么。有人可以在这里提供一些指针吗?我想你可以看到在WinDbg和一些调试器扩展(SOS.dll?)没有太多痛苦的反汇编(嗯,现在我认为相同的DLL也可以在VS2008中使用让我检查并获得如果我错了,请随时纠正我)如何查看由.net JITer生成的机器代码的反汇编?

回答

0

反汇编窗口在VS2008 Team System Developer Edition中的C#项目中工作正常。

其实 - 有一件事情不像我希望的那样工作 - 我无法跨入框架代码。也许有些地方可能会让我这样做,我不知道。但是我可以对自己的代码进行反汇编,这很好。

您使用VS2008 Express吗?也许这有一些限制。

总是有cordbg(yikes!)。

当然,在调试器下运行时,JITer将生成非优化的代码。为了避免这种情况,你可以跳过一些环节 - 比如在JIT完成其任何你想查看的工作后加入流程。

+0

喜迈克尔,我使用VS2008专业版(带ReSharper的4.5一起)。 – 2009-04-17 08:32:15

0

似乎是为我工作的罚款。您是否启用了地址级调试? 工具|选项|调试|一般|启用地址级调试?

要获取反汇编窗口,请转到Debug | Windows | Dissassembly(我使用的是C#开发人员配置)

或者,在命令窗口中,键入Debug.Dissassembly