Reflection einer exe

06/03/2008 - 11:38 von MarcoGomez | Report spam
Hallo,

ich habe eine exe-Datei, die einige Forms entàhlt, geschrieben für das
CF 1.1 (also mit VS 202). Ein Dissasemblieren ist nicht möglich, da
diese verchlüsselt wurde z. B. der Namespace wurde mit 0 Bezeichnet,
Klassen mit Zahlen... wenn ich die Datei dissasembliere, muss ich mich
durchs ganze Projekt arbeiten und alle Bezeichner umbenennen... dauert
viel zu lange.

Kann ich die exe irgendwie zur Laufzeit auslesen, mir das Form-Objekt
heraussuchen und es mit Show aufrufen?
Müsste doch gehen, oder?

LG
 

Lesen sie die antworten

#1 Marvin Massih
06/03/2008 - 12:53 | Warnen spam
Hallo Marco,

MarcoGomez schrieb:
ich habe eine exe-Datei, die einige Forms entàhlt, geschrieben für das
CF 1.1 (also mit VS 202). Ein Dissasemblieren ist nicht möglich, da
diese verchlüsselt wurde z. B. der Namespace wurde mit 0 Bezeichnet,
Klassen mit Zahlen...



Nennt sich auf Englisch "Obfuscation".

Kann ich die exe irgendwie zur Laufzeit auslesen, mir das Form-Objekt
heraussuchen und es mit Show aufrufen?
Müsste doch gehen, oder?



Ich weiß nicht, ob das CF Probleme machen wird, aber prinzipiell sollte
es etwa so gehen (ungetestet):

Assembly a = Assembly.Load( "DeineExe" );
Type formType = null;
foreach( Type t in a.GetTypes() )
{
if( t.IsSubclassOf( typeof( Form ) ) )
{
formType = t;
break;
}
}
Form f = (Form)Activator.CreateInstance( formType );
f.Show( );

Gruß
Marvin

Ähnliche fragen