Necesito la ruta bin del ensamblaje en ejecución. ¿Cómo lo conseguiste? Tengo una carpeta de complementos en Bin / Debug y necesito obtener la ubicación
Necesito la ruta bin del ensamblaje en ejecución. ¿Cómo lo conseguiste? Tengo una carpeta de complementos en Bin / Debug y necesito obtener la ubicación
Respuestas:
Así es como obtiene la ruta de ejecución de la aplicación:
var path = System.IO.Path.GetDirectoryName(
System.Reflection.Assembly.GetExecutingAssembly().GetName().CodeBase);
MSDN tiene una referencia completa sobre cómo determinar la ruta de la aplicación en ejecución .
Tenga en cuenta que el valor en pathtendrá la forma de file:\c:\path\to\bin\folder, por lo que antes de usar la ruta, es posible que deba file:\quitar el frente. P.ej:
path = path.Substring(6);
Podrías hacer esto
Assembly asm = Assembly.GetExecutingAssembly();
string path = System.IO.Path.GetDirectoryName(asm.Location);
System.IO.Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location)
Esto es lo que solía lograr con esto:
System.IO.Path.Combine(System.AppDomain.CurrentDomain.BaseDirectory, System.AppDomain.CurrentDomain.RelativeSearchPath ?? "");
RelativeSearchPathcontiene la carpeta "bin" real y en la aplicación de consola esto es nully BaseDirectorycontiene la ruta "bin" real.
var assemblyPath = Assembly.GetExecutingAssembly().CodeBase;
Path.GetDirectoryName(Application.ExecutablePath)
p.ej. valor:
C:\Projects\ConsoleApplication1\bin\Debug