Ottieni percorso eseguibile in C#
-
Ottieni percorso eseguibile con la classe
Assembly
inC#
-
Ottieni percorso eseguibile con la classe
AppDomain
inC#
-
Ottieni percorso eseguibile con la classe
Path
inC#
Questo tutorial introdurrà i metodi per ottenere il percorso eseguibile del nostro codice in C#.
Ottieni percorso eseguibile con la classe Assembly
in C#
La classe Assembly
rappresenta un assembly che è un blocco predefinito riutilizzabile di un’applicazione CLR Common Language Runtime in C#. La funzione Assembly.GetEntryAssembly()
viene utilizzata per ottenere l’assembly del codice attualmente in esecuzione. Possiamo ottenere il percorso del codice attualmente in esecuzione con la proprietà Assembly.GetEntryAssembly().Location
che restituisce il percorso eseguibile della corrente in una variabile stringa. Vedere il seguente esempio di codice.
using System;
using System.IO;
using System.Reflection;
namespace executable_path {
class Program {
static void Main(string[] args) {
string execPath = Assembly.GetEntryAssembly().Location;
Console.WriteLine(execPath);
}
}
}
Produzione:
C :\Debug\destroy object.exe
Nel codice precedente, abbiamo visualizzato il percorso eseguibile del nostro codice corrente con la classe Assembly
in C#. Abbiamo memorizzato il valore restituito dalla proprietà Assembly.GetEntryAssembly().Location
all’interno della variabile stringa execPath
e lo abbiamo mostrato all’utente.
Ottieni percorso eseguibile con la classe AppDomain
in C#
Il metodo sopra ci fornisce il percorso insieme al nome del file eseguibile. Se vogliamo ottenere il nome della directory senza il nome del file eseguibile, possiamo usare la classe AppDomain
in C#. La classe AppDomain
rappresenta un dominio dell’applicazione. Un dominio dell’applicazione è un ambiente isolato in cui vengono eseguite le applicazioni. La proprietà AppDomain.CurrentDomain
ottiene il dominio dell’applicazione dell’applicazione corrente. Possiamo ottenere il percorso eseguibile con la proprietà AppDomain.CurrentDomain.BaseDirectory
, che restituisce il percorso della directory contenente il file eseguibile del file di codice corrente in una variabile stringa. Il seguente esempio di codice ci mostra come possiamo ottenere il percorso eseguibile del nostro codice corrente con la classe AppDomain
in C#.
using System;
using System.IO;
using System.Reflection;
namespace executable_path {
class Program {
static void Main(string[] args) {
string execPath = AppDomain.CurrentDomain.BaseDirectory;
Console.WriteLine(execPath);
}
}
}
Produzione:
C :\Debug\
Nel codice precedente, abbiamo visualizzato il percorso eseguibile del nostro codice corrente con la classe AppDomain
in C#. Abbiamo memorizzato il valore restituito dalla proprietà AppDomain.CurrentDomain.BaseDirectory
all’interno della variabile stringa execPath
e lo abbiamo mostrato all’utente. Questo approccio è consigliato perché è il più semplice e richiede meno codice rispetto agli altri due approcci.
Ottieni percorso eseguibile con la classe Path
in C#
La classe Path
esegue varie operazioni su stringhe contenenti percorsi di file in C#. La funzione Path.GetDirectoryName()
può ottenere informazioni sulla directory specificata dal percorso. Possiamo usare la proprietà System.Reflection.Assembly.GetExecutingAssembly().CodeBase
come argomento della funzione Path.GetDirectoryName()
per ottenere il nome della directory contenente il codice corrente. Vedere il seguente esempio di codice.
using System;
using System.IO;
using System.Reflection;
namespace executable_path {
class Program {
static void Main(string[] args) {
string execPath =
Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().CodeBase);
Console.WriteLine(execPath);
}
}
}
Produzione:
file :\C :\Users\Maisam\source\repos\executable path\executable path\bin\Debug
Nel codice precedente, abbiamo visualizzato il percorso eseguibile del nostro codice corrente con la classe Path
in C#. Abbiamo memorizzato il valore restituito dalla funzione Path.GetDirectoryName()
all’interno della variabile stringa execPath
e lo abbiamo mostrato all’utente. Questo approccio restituisce il percorso con la stringa file:\
all’inizio del percorso. Questo approccio non è consigliato perché richiede più codice rispetto ai due approcci precedenti.
Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.
LinkedIn