Wie finde ich den Pfad der Anwendung in einer Konsolenanwendung?
In Windows Forms kann ich Application.StartupPath
verwenden, um den aktuellen Pfad zu finden, aber dies scheint in einer Konsolenanwendung nicht verfügbar zu sein.
System.Reflection.Assembly.GetExecutingAssembly()
.Location
1
Kombinieren Sie dies mit System.IO.Path.GetDirectoryName
, wenn Sie nur das Verzeichnis benötigen.
1Gemäß dem Kommentar von Mr.Mindor:
System.Reflection.Assembly.GetExecutingAssembly().Locationgibt zurück, wo sich die ausführende Assembly gerade befindet, was nicht unbedingt der Ort sein muss, an dem sich die Assembly befindet, wenn sie nicht ausgeführt wird. Im Falle von Schattenkopien von Assemblies erhalten Sie einen Pfad in einem temporären Verzeichnis. [System.Reflection.Assembly.GetExecutingAssembly().CodeBase
]4 gibt den "permanenten" Pfad der Assembly zurück.
Sie können den folgenden Code verwenden, um das aktuelle Anwendungsverzeichnis zu ermitteln.
AppDomain.CurrentDomain.BaseDirectory
Vielleicht möchten Sie dies tun:
System.IO.Path.GetDirectoryName(
System.Reflection.Assembly.GetExecutingAssembly().GetName().CodeBase)