300 votes

Obtenir le chemin d’accès du dossier actuel

Je veux créer un fichier exécutable qui convertir snoop non fichier pcap (fichiers Wireshark) et je veux créer uniquement le fichier exe qui, après, exécutez ce fichier dedans (double clic) gérer tous les fichiers dans le dossier en cours où existe le fichier exe.

J’ai essayer `` mais il semble mauvais chemin.

N’importe quelle idée ?

426voto

Thorsten Dittmar Points 28193

Vous devriez pas utiliser Directory.GetCurrentDirectory() dans votre cas, comme le répertoire actuel peut différer de l'exécution du dossier, en particulier lorsque vous exécutez le programme par le biais d'un raccourci.

Il est préférable d'utiliser Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location); pour votre but. Renvoie le chemin d'accès où le en cours d'exécution de l'assemblée réside.

Alors que mon approche proposée permet de différencier entre l'exécution de l'assemblée, à l'entrée de l'assemblée ou de toute autre chargée de l'assemblée, comme Soner Gönül a dit dans sa réponse,

Path.GetDirectoryName(Application.ExecutablePath);

peuvent également être suffisantes. Ce serait égale à

Path.GetDirectoryName(Assembly.GetEntryAssembly().Location);

200voto

piedpiper Points 189

System.AppDomain.CurrentDomain.BaseDirectory

Cela vous donnera le répertoire de votre application en cours d’exécution. Cela fonctionne même pour les applications web. Par la suite, vous pouvez joindre votre fichier.

27voto

Essaye ça:

 System.Environment.CurrentDirectory
 

23voto

Soner Gönül Points 35739
string appPath = Path.GetDirectoryName(Application.ExecutablePath);

D' Path.GetDirectoryName

Retourne les informations d'annuaire pour le chemin d'accès spécifié chaîne.

D' Application.ExecutablePath

Obtient le chemin d'accès du fichier exécutable lancé l'application y compris le nom de l'exécutable.

22voto

Faisal Hafeez Points 1635

Utiliser,

Vous pouvez l’utiliser aussi bien.

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