88 votes

Obtenir le chemin absolu de l'exécutable, en utilisant C# ?

Jetez un coup d'œil à ce pseudocode :

string exe_path = system.get_exe_path()
print "This executable is located in " + exe_path

Si je construis le programme ci-dessus et que je place l'exécutable dans le répertoire C:/meow/ Il imprimerait This executable is located in C:/meow/ à chaque fois qu'il est exécuté, quel que soit le répertoire de travail actuel.

Comment puis-je facilement réaliser cela en utilisant C# ?

2voto

Muhammad Mubashir Points 530

Supposons que j'ai un fichier .config dans l'application console et que j'obtienne ce qui suit.

Directory.GetParent(Directory.GetCurrentDirectory()).Parent.FullName + "\\YourFolderName\\log4net.config";

2voto

Sébastien Points 21

De mon côté, j'ai utilisé, avec une demande de formulaire :

String Directory = System.Windows.Forms.Application.StartupPath;

il prend le chemin de démarrage de l'application.

2voto

Charles A. Points 971

Celle qui a fonctionné pour moi et qui n'est pas mentionnée ci-dessus est la suivante Process.GetCurrentProcess().MainModule.FileName .

2voto

José Lugo Points 91

Si vous envisagez de créer une application console à utiliser avec le planificateur de tâches, je vous recommande d'utiliser cette approche :

var execDirectoryPath = Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().GetName().CodeBase)?.Replace("file:\\", "");

De cette manière, le chemin s'adaptera à l'emplacement dans lequel vous placerez votre fichier exécutable.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X