Der .NET Reflector ist nach der Übernahme durch redgate – wie zu erwarten – kostenpflichtig geworden. Da viele Entwickler nach einer kostenlosen Variante suchen, hatte ich vor einiger Zeit schon mal über ILSpy getwittert. Dies ist zwar ein netter Disassembler, benötigt aber schon noch ein wenig Wartung und Liebe.
Soeben bin ich auf das dotPeek Early Access Programm von JetBRAINS gestoßen. Die Website dazu klingt vielversprechend:
- Decompiling .NET 1.0-4.0 assemblies to C#
- Quick jump to a specific type, assembly, symbol, or type member
- Effortless navigation to symbol declarations, implementations, derived and base symbols, and more
- Accurate search for symbol usages
with advanced presentation of search results - Overview of inheritance chains
- Support for downloading code from source servers
- Syntax highlighting
- Complete keyboard support
- dotPeek is free!
Also gleich mal den Download der Version 1.0.0.1219 angestartet und zum Test geschritten. Die Assembly-Auswahl erfolgt entweder aus dem Filesystem oder direkt vom GAC. Referenzierte Assemblies werden automatisch nachgeladen. Per Decompiled Sources kann die Dekompilierung gestartet werden:
Das Ergebnis ist wie folgt:
<p>Wurde die Debug-Variante einer Assembly geladen, kann daraus via <em>Sources from Symbol Files</em> bezogen werden:</p> <p><a href="//norberteder.com/wp-content/uploads/images/image_27.png"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="dotPeek - Sources from Symbol Files" border="0" alt="dotPeek - Sources from Symbol Files" src="//www.norberteder.com/wp-content/uploads/images/image_thumb_17.png" width="452" height="357" /></a></p> <p>Unterstützt wird auch eine ausreichende Navigation, wie nachfolgend zu sehen ist:</p> <p><a href="//norberteder.com/wp-content/uploads/images/image_28.png"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="dotPeek - Source Navigation" border="0" alt="dotPeek - Source Navigation" src="//www.norberteder.com/wp-content/uploads/images/image_thumb_18.png" width="361" height="251" /></a></p> <p>Es stehen noch weitere Möglichkeiten zur Verfügung, die auf jeden Fall dafür sprechen, dieses Tool in der nächsten Zeit im Praxiseinsatz zu testen. Auf den ersten Blick macht es – zumindest für mich – einen besseren Eindruck als ILSpy.
Herzlichen Dank für den zusätzlichen Input. Werde ich mir natürlich auch ansehen.
Redgate hat es wahrlich nicht einfach, mal eben schnell ein paar Dollar zu verdienen :)
Und von Telerik gibt es seit ein paar Tagen auch ein ähnliches Produkt (dz. noch Beta): JustDecompile.
Powerful, Free Decompiling. Forever.
http://www.telerik.com/products/decompiling.aspx
redgate kann einem fast leid tun…
Hallo Norbert,
Telerik bietet mit JustDecompile ebenfalls einen kostenlosen Ersatz für den NET Reflector.Solltest Du dir unbedingt mal ansehen.
http://www.telerik.com/products/decompiling.aspx
Schöne Grüße aus Berlin
Oliver