Gibt es eine Möglichkeit, zwei ausführbare .NET-Dateien zu unterscheiden?

8

Wir haben kürzlich einen Entwickler aus unserer Organisation entlassen. Wir sind nicht sicher, ob die Version einer ausführbaren Datei, die er auf einem Produktionsserver ablegt, dieselbe ist, die derzeit in TFS vorhanden ist. Gibt es einen Weg (neben der Verwendung von Just Compile oder ILDASM), das Projekt von TFS zu erstellen und diese ausführbare Datei mit der aktuell auf unserem Produktionsserver zu vergleichen?

UPDATE: Ich versuche Just Decompile, und ich habe beide Binärdateien geladen, also gehe ich durch jeden Namespace, Member usw., um sie miteinander zu vergleichen. Ich bin es gewohnt, Schema Compare in Visual Studio zu verwenden, um die Schemas von zwei Datenbanken zu vergleichen und die aktualisierten, entfernten und hinzugefügten Elemente mit den hervorgehobenen Unterschieden zu sehen. Gibt es ein Tool, das diese 2 dekompilierten Binärdateien braucht und die Unterschiede irgendwie hervorhebt?

    
Christopher Garcia 09.07.2012, 23:00
quelle

3 Antworten

5

Ja, mit NDepend können Sie zwischen zwei .Net-Assemblys unterscheiden. Wenn Sie sogar genau dieselbe Quelle zweimal kompilieren, werden nicht genau die gleichen Baugruppen erzeugt.

    
softveda 09.07.2012, 23:17
quelle
5

Im Moment kann ich nur an diesen Ansatz denken:

  1. Verwenden Sie dotPeek , um die Live-Assembly zu dekompilieren
  2. Verwenden Sie dotPeek zum Dekompilieren derselben Assembly, die neu aus TFS erstellt wurde
  3. Verwenden Sie ein Tool wie "Beyond Compare" für die beiden dekompilierten Quellen
  4. Fügen Sie die Änderungen nach Bedarf hinzu

Hoffen Sie, dass Sie das suchen?

Andere Lektüre, die für die Zukunft in Bezug auf Versionierung nützlich sein kann, damit Sie wissen, welche DLL welche Funktionalität enthält (möglicherweise für Sie nützlich oder nicht, verzeihen Sie mir, wenn ich Ihnen etwas Offensichtliches sage):

Best Practices / Anleitungen zum Verwalten von Baugruppenversionsnummern

Viel Glück

    
Mr. Mr. 09.07.2012 23:17
quelle
0

Ein Produkt, das wir für detaillierte Vergleiche einschließlich Vergleichen von Binärdateien verwenden, ist Beyond Compare . Als wir das Produkt zum ersten Mal bekamen, dachte ich, es wäre etwas von begrenztem Nutzen, aber es hat uns geholfen, einige sehr knifflige Probleme zu lösen. Es vergleicht Verzeichnisse, Textdateien, Binärdateien, MP3s, Bilder und Softwareversionen. Es ist auch nicht besonders teuer.

Ich habe gerade das Produkt gegen die Binärdateien einer Anwendung sowohl in Release als auch in Debugger ausgeführt und jedes diff hervorgehoben.

Ich bin mir sicher, dass Sie ILDASM gegen zwei Binärdateien ausführen und einen Augapfelvergleich durchführen können, aber ein Tool wie dieses wird sich wahrscheinlich immer wieder amortisieren.

    
Cyberherbalist 09.07.2012 23:15
quelle