Pfad aktuell geladener Assemblies (.exe/.dll) herausfinden

Pfad aktuell geladener Assemblies (.exe/.dll) herausfinden

Möchte man den Pfad der ausführenden Assembly herausfinden (in .net), so geht das sehr einfach. Leicht aufwendiger ist es nur, wenn man den Pfad einer geladenen Assembly herausbekommen möchte.

Den Ordnerpfad der ausführenden Assembly erhält man per

Application.StartupPath

.

Den kompletten Pfad des gestarteten Programmes erhalten wir per

Application.ExecutablePath

.

Den kompletten Pfad einer gewünschten Assembly erhalten wir schließlich, indem wir auf einen bestimmten geladenen Typ prüfen. Diesen erhalten wir entweder, wenn wir ein this-Objekt haben, also nicht z. B. in einer statischen Methode sind. Alternativ können wir diesen z. B. auch durch typeof(MyClass) erhalten, wenn MyClass eine in dieser Assembly implementierte Klasse ist. Geladen sollte MyClass zu diesem Zeitpunkt bereits sein.

1
2
string fullPath = typeof(MyClass).Assembly.Location;
string folderPath = Path.GetDirectoryName(fullPath );

Den Ordner erhalten wir schließlich über die GetDirectoryName Funktion.
Nichts Wildes, aber wenn man die Informationen benötigt, muß man doch immer ein paar Minuten suchen. Also, ich. 🙂

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.