Ich habe über ein Werkzeug nachgedacht, um Objekte zur Laufzeit zu inspizieren, hauptsächlich für Reverse-Engineering, und ich frage mich, ob so etwas existiert.Gibt es ein Tool, mit dem .NET-Objekte in einem laufenden Prozess überprüft werden können?
Die Art, wie ich darüber nachdachte, war, dass Sie zwei Ansichten hatten, ein Diagramm von Objekten und eine Klassenliste. Aus der Klassenliste können Sie eine Klasse auswählen und deren Instanzen entweder in einer Liste oder im Diagramm sehen. In dem Graphen können Sie die Verbindungen zwischen Objekten sehen, die entsprechend mit Anmerkungen versehen sind, z. Schlüssel in einer Hash-Tabelle könnten Beschriftungen an den Kanten zwischen dem Hash-Tabellenobjekt und dem Wert sein.
Sie können auch eine Liste von Objekteigenschaften aufrufen und die darin enthaltenen Werte anzeigen/bearbeiten. Die in .NET bereitgestellten Metadaten würden dies ziemlich trivial machen.
Kennt jemand ein Werkzeug, das dies tun kann? Es scheint ein immens nützliches Tool zum Debuggen und Reverse-Engineering zu sein.
Bearbeiten: Auch ein anderes nützliches Feature wäre die Möglichkeit, Namenszuordnungen beim Betrachten einer Binärdatei festzulegen. Das heißt, wenn Sie eine verschleierte Binärdatei haben, können Sie die verschleierten Namen für Platzhalter oder echte Namen austauschen. Dies würde die eigentliche Binärdatei nicht beeinflussen, nur die Ansicht im Inspector.
Teil 2 bearbeiten: Das Tool sollte unter Vista und XP laufen können und Unterstützung für x64 haben.
Ah hah, das sieht gut aus. Vielen Dank! –
Kein Problem. Froh, dass ich helfen konnte! –
@Cody Haben Sie diese App funktioniert, kann ich nicht scheinen, es zu laufen, stürzt jedes Mal ab :( –