Мне нужен путь к исполняемой сборке. Как вы его получите? У меня есть папка Plugins в Bin / Debug, и мне нужно получить местоположение
Ответы:
Вот как вы можете узнать путь выполнения приложения:
var path = System.IO.Path.GetDirectoryName(
System.Reflection.Assembly.GetExecutingAssembly().GetName().CodeBase);
В MSDN есть полная справка о том, как определить путь к исполняющему приложению .
Обратите внимание, что значение в pathбудет в форме file:\c:\path\to\bin\folder, поэтому перед использованием пути вам может потребоваться file:\снять переднюю часть. Например:
path = path.Substring(6);
Ты мог бы сделать это
Assembly asm = Assembly.GetExecutingAssembly();
string path = System.IO.Path.GetDirectoryName(asm.Location);
System.IO.Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location)
Вот что я делал для этого:
System.IO.Path.Combine(System.AppDomain.CurrentDomain.BaseDirectory, System.AppDomain.CurrentDomain.RelativeSearchPath ?? "");
RelativeSearchPathсодержит фактическую «БИН» папку и в консольном приложении это nullи BaseDirectoryсодержит фактический «БИН» путь.
var assemblyPath = Assembly.GetExecutingAssembly().CodeBase;
Path.GetDirectoryName(Application.ExecutablePath)
например. значение:
C:\Projects\ConsoleApplication1\bin\Debug