Die Dekompilierung code (sprachunabhängig)
Welche software kann verwendet werden, um den Quellcode in eine .dll-Datei, unabhängig von der verwendeten Programmiersprache für den source-code?
InformationsquelleAutor Naruto | 2009-10-22
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn es eine managed DLL (.NET), öffnen Sie ihn mithilfe von tools wie Reflektor oder ILDASM und du wirst sehen, die IL code. (Edit 2017-02-03: In 7+ Jahren .NET Zerleger haben natürlich große Fortschritte gemacht und sind nun in der Lage, produzieren sehr gute C# - code)
Wenn es eine nicht verwaltete DLL (native), sind Sie aus Glück heraus. Die besten können Sie tun ist, laden Sie einen disassembler. Was führt Sie fast nirgendwo, es sei denn, Sie wissen genau, wo Sie gehen wollen.
InformationsquelleAutor Serge Wautier
Sind Sie daran interessiert, zu dekompilieren Baugruppen. Auch hier ist ein start auf der Dekompilierung .NET assemblies: http://aspnet.4guysfromrolla.com/articles/080404-1.aspx
Einem beliebten Werkzeug in der .NETZ-community für die Dekompilierung Baugruppen ist .NET Reflector
ya.. .net-DLL-code kann ich sehen, aber ich habe win32-Sprach-DLL. ist de-Zusammenstellung möglich.
InformationsquelleAutor pyrocumulus
Es ist nicht möglich, (1), zu dekompilieren Objekt-code, Quell-code. Inspektion eine Schnittstelle ist eine andere Sache; es gibt tools, die existieren, aber ich weiß nicht offhand.
(1) - gut, OK, es ist möglich, für einige Sprachen und unter bestimmten Bedingungen, aber der produzierte code nicht genau gelesen werden...
Den nur lesbaren code erhalten Sie, ist die Assembler Sprache (es gibt viele Programme, die für dieses). Es gibt einige Sprachen, kann dekompiliert original (oder in der Nähe) source code, z.B. Visual Basic 3. Aber wer schreibt die Programme in VB3 heute? Niemand. Soweit zu sehen, die Importe/Exporte der DLL verwenden, können Sie den Dependency walker-Programm aus:
http://www.dependencywalker.com/
Für einige Sprachen, zum Beispiel Visual Basic oder C#, kann man lesbaren source-code, wenn Sie einen guten decompiler und der code nicht obfuscated (was es die meiste Zeit nicht)
Überprüfen Sie diese Website, wenn Sie interessiert sind, dekompilieren:
http://www.program-transformation.org/Transform/DecompilationPossible
Für .Net .NET Reflector ist der Weg zu gehen. Es wird zu dekompilieren deine dll in C# oder VB.NET http://www.aisto.com/roeder/dotnet/
InformationsquelleAutor Suraj Chandran
Für .NET, Reflektor wird dies tun; die "Pro" - version (jetzt in der Vorschau) hat ein plugin für Visual Studio, mit der Sie Debuggen in den meisten verwalteten code innerhalb der VS-IDE selbst, anstatt ein separates tool. So weit, es ist sehr süß.
Reflektor EAP http://www.simple-talk.com/community/blogs/alex/attachment/74919.ashx
InformationsquelleAutor Marc Gravell
Sind Sie verschiedenen Formaten.
Für eine .NET-dll, die Sie verwenden können ildasm.exe (installiert mit .net framework) oder .NET Reflector (download)
Sie sind nicht so leicht dekompiliert werden in Ihren ursprünglichen Sprachen. Ich weiß nicht, der ein gutes Werkzeug, andere als einen dissasembler (und dann wirst du sehen, x86 assembly,...)
InformationsquelleAutor Arjan Einbu
Es wurde genug gesagt zu dekompilieren .NET. Wenn Sie jemals entscheiden, um mit zu beginnen reverse-engineering native binaries, empfehle ich die Nutzung IDA.
Es unterstützt verschiedene Betriebssysteme, Prozessorarchitekturen, erkennt und zeigt die standard-Bibliotheken-Nutzung (so können Sie leicht finden Sie Orte von Interesse), zeigt die Graphen der Abhängigkeiten zwischen den Unterprogrammen, zeigt Verfahren Argumente auf stack etc. Es kann auch ein Skript erstellt werden und es sind Skripts, die erkennen von C++ - Klassen und try-catch-Blöcken, findet COM-Schnittstellen-Namen für UUIDs und tun viele andere Dinge. Es ist ein tolles tool und es ist kostenlos version.
InformationsquelleAutor elder_george
Dekompilieren einer .Net-DLL, die Sie verwenden können,.Net Reflector. Es wird für die Arbeit DLLs geschrieben .Net-Sprache.
Dekompilieren einer Java JAR-Datei, versuchen Sie Java Decompiler.
Dekompilierung native code (C++) ist viel schwieriger.
InformationsquelleAutor SLaks
Sei denn, Sie sind in .NETTO-land, was in einer DLL ist der binäre code. Die einzige Sprache, die Sie sehen können, dies ist in assembler, die nur eine mnemotechnische Art der Präsentation der Maschinen-Sprache.
InformationsquelleAutor sbi
Unabhängig von einem .Net-Sprache, die Sie verwenden - alles wird kompiliert, um MSIL (Microsoft intermediate language). Können Sie tools wie Ildasm zu konvertieren, um lesbar "zerlegt text":
http://msdn.microsoft.com/en-us/library/f7dy01k1.aspx
Können Sie auch verwenden, Reflektor:
http://www.builderau.com.au/program/asp/soa/Look-inside-NET-DLL-files-with-Reflector/0,339028371,339287377,00.htm
untersuchen, - Klassen und-Methoden (es unterstützt verschiedene .Net-Sprachen)
InformationsquelleAutor DmitryK
Für systemeigene DLL ' s dieses Programm, Hex-Rays Decompiler (eine Ebene auf der Oberseite der ausgezeichnete IDAPro disassembler-debugger) ist wahrscheinlich so nah wie Sie bekommen können. Wiederherstellen nicht der original-code aus, sondern konvertiert die Demontage in einer C-ähnlichen pseudocode. Es ist nicht Billig aber.
InformationsquelleAutor fvu