[.NET Tool] MSIL Reader–ILSpy

[.NET Tool] MSIL Reader–ILSpy

ILSpy 是一套透過反射觀察.NET組件(*.exe,*.dll)的免費軟體,透過官網可以看到這跟 Reflector UI長的很像

下圖是官網的連結


看一下官網上寫的特性,蠻多功能跟 Reflector 相同,不過可以確定的是,Show XML Document 我在 Reflector 找不到

ILSpy Features

  • Assembly browsing
  • IL Disassembly
  • Support C# 5.0 "async"
  • Decompilation to C#
    • Supports lambdas and 'yield return'
    • Shows XML documentation
  • Decompilation to VB
  • Saving of resources
  • Save decompiled assembly as .csproj
  • Search for types/methods/properties (substring)
  • Hyperlink-based type/method/property navigation
  • Base/Derived types navigation
  • Navigation history
  • BAML to XAML decompiler
  • Save Assembly as C# Project
  • Find usage of field/method
  • Extensible via plugins (MEF)
  • Assembly Lists

image

它有提供一個外掛

image

還蠻酷的它叫:Assembly Visualizer

透過作者的Blog可以看到,它是在畫組件的圖

下圖連結來自作者Blog

它也為Reflector提供了畫圖的外掛

image

下載ILSpy後再去下載Assembly Visualizer dll,把Assembly Visualizer的dll擺在ILSpy.exe的目錄下就可以了

image


還要特別介紹一個ILSpy團隊所開發的產品叫 ILSpy-Debugger,跟上面介紹比較不同的是,它可以像VS那樣子的調試組件,這似乎還在測試當中,好像還沒有跟原本的ILSpy整合,必須要再另外下載屬於Debugger的ILSpy

作者的 blog 寫的相當的清楚,按圖操作就可以了

下圖來自作者 Blog

經我測試,組件就算沒有PDB檔也仍能中斷調試,下圖是用Release Mode編譯的Winform程式測試

image

若有謬誤,煩請告知,新手發帖請多包涵


Microsoft MVP Award 2010~2017 C# 第四季
Microsoft MVP Award 2018~2022 .NET

Image result for microsoft+mvp+logo