Avatar ·

Comment obtenir le chemin d'accès au fichier exécutable d'une application console dans .NET ?

Bonjour à tous ! J'écris une application console en C# (.NET 6) et j'ai besoin d'obtenir le chemin d'accès au dossier où se trouve mon fichier .exe. J'ai essayé plusieurs méthodes, mais les résultats sont déroutants. Par exemple, je lance l'application depuis le dossier `C:\MyApp`, mais je veux qu'elle lise le fichier `settings.json` depuis le même répertoire. J'ai essayé ceci : ```csharp string path = Environment.CurrentDirectory; Console.WriteLine(path); ``` Mais quand je lance l'application depuis la ligne de commande en étant dans un autre dossier, cela affiche non pas `C:\MyApp`, mais le répertoire de travail actuel. C'est incorrect. J'ai aussi essayé : ```csharp string path = Assembly.GetExecutingAssembly().Location; Console.WriteLine(path); ``` Mais cela retourne le chemin avec le nom du fichier (par exemple, `C:\MyApp\MyApp.exe`), alors que j'ai besoin seulement du dossier. Et j'ai aussi entendu dire que dans certains cas, cette méthode peut retourner le chemin vers un dossier temporaire à cause du shadow copying. Bref, je suis complètement perdu. Comment obtenir correctement un chemin fiable vers le dossier de l'application dans .NET, pour qu'il fonctionne dans tous les cas ?