3 Stimmen

Den Quellcode von einer vorkompilierten ASP.NET-Website abrufen?

Lange Rede, kurzer Sinn: VSS hat entschieden, dass ich einige Codeänderungen nicht vornehmen darf. Mir fehlt eine anständig große Funktion, die ich nicht neu schreiben möchte (ich habe sie im letzten Sommer an einen Mitarbeiter als Arbeit gegeben). Es funktioniert großartig und erfüllt die Wünsche des Kunden. Allerdings ... Ich habe den Rechner nicht mehr, und der Rechner, auf dem es entwickelt wurde, ist inzwischen zu klein geworden!

Do'h!

Wir haben die Website direkt aus Visual Studio in einer Testumgebung veröffentlicht und dann die Dateien in die Produktionsumgebung kopiert. Ich habe also die "kompilierten" Dateien aus der VS-Veröffentlichung.

Wie kann ich das wieder in den Code bringen? Ich bin sicher, ich kann herausfinden, welche DLL es ist in und ich würde davon ausgehen, dass etwas wie Reflektor wird meine beste Wette sein? Werden die ursprünglichen Variablennamen beibehalten?

8voto

Adam Ralph Punkte 28333

Ich würde den .NET Reflektor verwenden. Ihre ursprünglichen Variablennamen bleiben erhalten (vorausgesetzt, Sie haben keinen Obfuscator ausgeführt), wenn Sie sowohl die PDB-Dateien als auch die DLLs haben.

4voto

sclarson Punkte 4329

Ich würde vorschlagen, Ihren kompilierten Code zu spiegeln und zu sehen, wie gut er lesbar ist.

http://www.red-gate.com/products/reflector/

1voto

Marc Gravell Punkte 970173

Reflektor für alle Fälle. Auf lokale Variablennamen kann man sich nicht verlassen, da sie nicht wirklich existieren (nur Felder behalten ihre Namen), aber wenn man die passende pdb hat, ist das eine große Hilfe. Wenn Sie die pro/EAP Version von Reflektor wird die meiste Arbeit für Sie erledigt (Generierung der vollständigen C#-Disassemblierung usw., so dass Sie nicht Methode für Methode gehen oder ein Plugin verwenden müssen).

Es kann natürlich sein, dass Sie sich jedes Verzeichnis einzeln ansehen müssen.

1voto

Matt Briggs Punkte 39925

Das Beste, was Sie erreichen können, ist ein Decompiler wie dieser http://www.red-gate.com/products/reflector/ . Dabei gehen Variablennamen und Kommentare verloren, aber das Ergebnis lässt sich kompilieren.

Das ist ätzend, aber wahrscheinlich viel besser, als ganz von vorne anzufangen.

1voto

mmcfly Punkte 794

Ich habe JustDecompile von Telerik verwendet, um den Quellcode von einer vorkompilierten Site zurückzubekommen. Es ist kostenlos und hat alles getan, was ich gebraucht habe.

http://www.telerik.com/products/decompiler.aspx

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X