如何查看由.net JITer生成的機器代碼的反彙編?顯示反彙編窗口菜單選項沒有找到的地方。即使它的工具欄按鈕也處於禁用狀態。如果我記得正確的反彙編確實可以看到,但必須訴諸一些伎倆,不幸的是,我不記得那個伎倆是什麼。有人可以在這裏提供一些指針嗎?我想你可以看到在WinDbg和一些調試器擴展(SOS.dll?)沒有太多痛苦的反彙編(嗯,現在我認爲相同的DLL也可以在VS2008中使用讓我檢查並獲得如果我錯了,請隨時糾正我)如何查看由.net JITer生成的機器代碼的反彙編?
0
A
回答
0
嗨不幸的是,顯示調試窗口命令仍然無法正常工作,但您可以通過調試器擴展dll調用SOS.dll調試/反彙編.net代碼這裏有幾個鏈接(注意這適用於VS2008和WinDbg) ...
1)MSDN: SOS Debugging Extension (SOS.dll)
2)Some general tips on using SOS with Windbg
0
反彙編窗口在VS2008 Team System Developer Edition中的C#項目中工作正常。
其實 - 有一件事情不像我希望的那樣工作 - 我無法跨入框架代碼。也許有些地方可能會讓我這樣做,我不知道。但是我可以對自己的代碼進行反彙編,這很好。
您使用VS2008 Express嗎?也許這有一些限制。
總是有cordbg(yikes!)。
當然,在調試器下運行時,JITer將生成非優化的代碼。爲了避免這種情況,你可以跳過一些環節 - 比如在JIT完成其任何你想查看的工作後加入流程。
0
似乎是爲我工作的罰款。您是否啓用了地址級調試? 工具|選項|調試|一般|啓用地址級調試?
要獲取反彙編窗口,請轉到Debug | Windows | Dissassembly(我使用的是C#開發人員配置)
或者,在命令窗口中,鍵入Debug.Dissassembly
相關問題
- 1. 如何查看優化的jitted .NET代碼的反彙編?
- 2. 如何正確反彙編.NET代碼?
- 3. 如何查看由CLR生成的本機代碼?
- 4. 由IBM的企業COBOL編譯器生成的查看代碼
- 5. 如何查看由C/C++程序的gcc(任何flavor)編譯器生成的彙編代碼?
- 6. 是否可以查看由JVM熱點編譯器生成的機器代碼?
- 7. 如何查看由v8生成的機器碼?
- 8. 反彙編原始x64機器代碼
- 9. 是否有反彙編程序生成可編譯的彙編源代碼?
- 10. 如何查看編譯器爲OpenMP構造生成的代碼
- 11. 彙編代碼生成如何工作?
- 12. 如何檢查由C++編譯器生成的代碼?
- 13. 英特爾奔騰彙編器x86彙編代碼生成
- 14. 從C#代碼生成彙編代碼?
- 15. .NET反射器錯誤:沒有反彙編代碼
- 16. 如何查看由camlp4生成的代碼
- 17. 代碼生成器的.Net
- 18. 反編譯彙編代碼
- 19. xorl%eax,x86_64中的%eax由gcc生成的彙編代碼
- 20. Visual Studio 2008:如何查看當前未執行的DLL的反彙編代碼
- 21. 關於gcc生成的彙編代碼(彙編代碼不正確?)
- 22. 如何查看VS2010生成的彙編語言?
- 23. 彙編語言機器代碼
- 24. Ada泛型和彙編代碼生成
- 25. 反彙編Scala代碼
- 26. 如何反彙編原始MIPS代碼?
- 27. 如何反彙編原始x86代碼?
- 28. 調試反彙編代碼
- 29. 從c反彙編代碼#
- 30. 查看彙編和C代碼
喜邁克爾,我使用VS2008專業版(帶ReSharper的4.5一起)。 – 2009-04-17 08:32:15