Repertoire racine de l'application

Résolu
mactarseck Messages postés 27 Date d'inscription mardi 1 juin 2010 Statut Membre Dernière intervention 9 septembre 2013 - 23 août 2012 à 15:42
cs_L0ci Messages postés 224 Date d'inscription vendredi 26 novembre 2010 Statut Membre Dernière intervention 11 juin 2013 - 31 août 2012 à 10:19
Bonjour,
j'ai un problème avec mon application que je veux importer dans dans une autre machine. je veux savoir comment déterminer le répertoire racine de mon application pour que si je l'importe je vais pouvoir voir mes fichiers images stockes dans le dossier image de mon application. Je travaille avec c# Windows form.
A voir également:

10 réponses

cs_BinKentsu Messages postés 64 Date d'inscription jeudi 1 septembre 2011 Statut Membre Dernière intervention 22 juillet 2014 8
23 août 2012 à 16:27
Le fait de faire ça te renvoie le répertoire ou se trouve ton executable:
Path = Application.ExecutablePath;

Ensuite tu fais ça le nombre de fois qu'il faut pour retourner à l'endroit ou se situe ton dossier :
Path = Directory.GetParent(Path).ToString(); // Tu arrives dans le répertoire bin
Path = Directory.GetParent(Path).ToString(); // Tu arrives dans le répertoire de l'application
Path = Path + "\images"; // Tu arrives dans le répertoire que tu souhaites

BinKentsu
6
cs_L0ci Messages postés 224 Date d'inscription vendredi 26 novembre 2010 Statut Membre Dernière intervention 11 juin 2013 7
23 août 2012 à 16:04
Bonjour,

Si tes documents son dans des sous dossiers (par rapport au .exe) tu peux y accéder directement avec "/dossier/blabla.txt" ou pour être sur tu peux utiliser
Application.StartupPath()
qui renvoi le chemin complet vers le .exe
0
cs_BinKentsu Messages postés 64 Date d'inscription jeudi 1 septembre 2011 Statut Membre Dernière intervention 22 juillet 2014 8
23 août 2012 à 16:05
Bonjour,

Il existe une fonction :
Application.ExecutablePath;

BinKentsu
0
mactarseck Messages postés 27 Date d'inscription mardi 1 juin 2010 Statut Membre Dernière intervention 9 septembre 2013
23 août 2012 à 16:10
le dossier images ne se trouve pas dans bin.
j'ai un dossier application auquel il images,bin,obj, etc..

Application.StartupPath() donne le dossier bin\debug\ mais j'ai besoin de application\images.

Merci pour votre réponse.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
mactarseck Messages postés 27 Date d'inscription mardi 1 juin 2010 Statut Membre Dernière intervention 9 septembre 2013
23 août 2012 à 16:41
Merci BinKentsu et Loci ça marche maintenant avec GetParent(Path)
0
cs_L0ci Messages postés 224 Date d'inscription vendredi 26 novembre 2010 Statut Membre Dernière intervention 11 juin 2013 7
23 août 2012 à 16:59
Salut,

juste une petit conseil. Il vaut mieux ne pas mettre tes ressources dans des dossiers de niveau supérieur à ton .exe.
Le StartupPath() t'affiches /bin/debug parce que l'appli n'est pas déployée et que tes ressources ne sont pas inclues. Mais si tu ajoute tes ressources à ta solution avec l'option toujours copier, ton dossier se trouvera dans /bin/debug/tesressources et comme ça le chemin marchera automatiquement au déploiement.
0
mactarseck Messages postés 27 Date d'inscription mardi 1 juin 2010 Statut Membre Dernière intervention 9 septembre 2013
23 août 2012 à 17:22
Merci pour les conseils
Visual studio crée un dossier ressource. Est ce que je ne devrais pas copier le dossier images dans Ressources Pour faciliter le déploiement. ou si je crée un dossier dans /bin/debug/mesressources et qu'il sera dans l’exécutable?
0
cs_L0ci Messages postés 224 Date d'inscription vendredi 26 novembre 2010 Statut Membre Dernière intervention 11 juin 2013 7
24 août 2012 à 09:06
En fait le nom du dossier n'a pas d'importance. Ce qu'il faut c'est que tes fichiers apparaissent dans ta solution et que pour chaque fichier tu ai l'option "toujours copier". Ça qui signifie que à chaque déploiement le dossier et les fichiers seront automatiquement placés au bon endroit et qu'il suffira d'utiliser un chemin relatif pour y accéder.

Mais après c'est juste ma façon de faire. Si tu as trouvé une manière qui marche touches plus a rien
0
cs_warzet Messages postés 99 Date d'inscription jeudi 17 janvier 2008 Statut Membre Dernière intervention 25 juillet 2013 1
31 août 2012 à 10:12
Bonjour L0ci, merci pour tes conseils. En ce qui me concerne, j'utilise VS-2008 pro en Anglais, alors je souhaiterais comprendre où trouver
Ce qu'il faut c'est que tes fichiers apparaissent dans ta solution et que pour chaque fichier tu ais l'option "TOUJOURS COPIER".

Car voici à chaque fois que j'essaie de déployer mon application, j'ai toujours des fichiers manquant. Merci de me repondre
0
cs_L0ci Messages postés 224 Date d'inscription vendredi 26 novembre 2010 Statut Membre Dernière intervention 11 juin 2013 7
31 août 2012 à 10:19
Bonjour,

Alors il faut que les fichiers que tu souhaites déployer apparaissent dans ta solution. Ensuite tu clique sur chaque fichier et tu regarde dans les propriétés et tu mets
Build Action -> Resource
Copy to output directory -> always copy
(j'ai pas ma version anglaise sous la main mais ça doit être a peu prêt ça)
0
Rejoignez-nous