.NET Reflector
.NET Reflector | |
---|---|
Basisdaten
| |
Entwickler | Red Gate Software Ltd. |
Aktuelle Version | 6.6 |
Betriebssystem | Microsoft Windows |
Kategorie | Decompiler |
Lizenz | Reflector Software License |
www.red-gate.com/products/reflector/ |
.NET Reflector ist eine Software, die Microsoft .NET-Binaries dekompilieren kann. Darunter versteht man, dass mit Hilfe des Disassemblers die Methoden im Rahmen der Möglichkeiten in einen lesbaren Code (Quellcode) zurückübersetzt werden. Dabei werden auch .NET-Klassen und Assemblies übersetzt. (Assemblies sind die Bausteine einer jeden .NET-Anwendung, auf die die ganze Funktionalität aufgebaut ist. Assemblies enthalten Module, die Klassen, Strukturen, Enumerationen, …) Bei der Zielsprache der Dekompilierung kann zwischen IL, C#, Visual Basic, Delphi, MC++ und Chrome ausgewählt werden. Reflection ermöglicht, dass eine .NET Assembly die Methoden und Properties einer anderen .NET Assembly abfragen kann. Allgemein ermöglicht Reflection (auch Reflexion genannt) bei objektorientierter Programmierung während der Ausführung des Programmes Informationen über Klassen oder deren Instanzen abfragen zu können.
Weitere Funktionen
Ein Klassenbrowser, der die Möglichkeit bietet, sich (wie im Windows Explorer) durch die Namespaces und Klassen zu bewegen, und ein Codeanalysewerkzeug für das Dekompilat sind weitere Teile des Programms. Das Codeanalysewerkzeug untersucht von welchen anderen Klassen eine Klasse abhängig ist, von welchen anderen Klassen sie benutzt wird und von welchen Klassen sie instanziert wird.
.NET Reflector kann durch Add-Ins erweitert werden. Beispiele sind Add-Ins zur Analyse von Assemblies (Qualitäts-Metriken, Abhängigkeitsmatrizen), zur Volltext-Suche, zum Speichern des Sourcecodes oder als Unterstützung beim Debugging.
Änderung des Bezahlmodels
Bis zum 1. März 2011 ist .Net Reflektor Freeware (kostenlos). Zum 1. März soll es Shareware werden und 35 US-Dollar kosten.[1] Der Schritt wurde mit den laufenden Kosten für die Bereitstellung von Patches begründet und es wird sich bei der Community entschuldigt.
Alternativen
Als Reaktion auf die Änderung des Bezahlmodells wurde mit dem Open-Source-Project ILSpy begonnen.
Das Unternehmen JetBrains, ein direkter RedGate-Konkurrent im Markt für Softwareentwicklungs-Werkzeuge hat angekündigt, in Kürze einen kostenlosen Decompiler für .NET zur Verfügung zu stellen. Auf der Ankündigungsseite für den JetBrains Decompiler findet sich ein Seitenhieb auf RedGate: "And by saying “free”, we actually mean “free”."
Weblinks
- Informationen für Programmierer zur Benutzung des Programms
- Informationen über Obfuscation um reverse-engineering von .NET-Code vorzubeugen
- Add-Ins für den .NET Reflector
- JetBrains Ankündigung für dessen Decompiler
Quellen
- ↑ An open letter to the .NET community, abgerufen am 23. Februar 2011