IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

Parcours de répertoire


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Juin 2007
    Messages
    362
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 362
    Par défaut Parcours de répertoire
    Salut à tous!

    Je bute sur un cas d'école, et je trouve pas

    Je développe une petite appli console de test.
    Mon fichier exe se trouve dans le répertoire :
    myProject/bin/debug/myexe.exe

    J'ai besoin de créer une instance processStartInfo vers un autre exécutable du répertoire :
    myProject/myFolder/myexe2.exe

    Pour instancier processStartInfo j'ai cette ligne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ProcessStartInfo pInfo = new ProcessStartInfo(Executable, Options);
    Que dois contenir Executable ?
    ceci : "../myFolder/myexe2.exe" ??

    Merci d'avance !

  2. #2
    Invité
    Invité(e)
    Par défaut
    Si l'exe à exécuter se trouve dans le même répertoire alors je pense que ton paramétre Executable doit contenir ça System.IO.Path.Combine(Environment.CurrentDirectory, "myexe2.exe")

  3. #3
    Membre Expert Avatar de sisqo60
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Février 2006
    Messages
    754
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 754
    Par défaut
    Bonjour,

    h2s84, il est préférable d'utiliser Application.StartupPath car c'est le chemin de l'executable en cours en lecture seule alors Environment.CurrentDirectory est en lecture ecriture et peut donc être redéfini dans le programme.

    Sinon ta solution est la bonne

  4. #4
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par sisqo60 Voir le message
    Bonjour,

    h2s84, il est préférable d'utiliser Application.StartupPath car c'est le chemin de l'executable en cours en lecture seule alors Environment.CurrentDirectory est en lecture ecriture et peut donc être redéfini dans le programme.

    Sinon ta solution est la bonne
    +1 pour m'avoir appris que Environment.CurrentDirectory n'est pas en lecture seule.

    Sinon ta solution marchera pour ce cas là et aussi en Windows Forms mais je ne pense pas que ce soit possible en WPF. Dans tous les cas je la mets sous le coude pour la prochaine fois.

  5. #5
    Expert confirmé
    Avatar de StringBuilder
    Homme Profil pro
    Chef de projets
    Inscrit en
    Février 2010
    Messages
    4 197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Chef de projets
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2010
    Messages : 4 197
    Billets dans le blog
    1
    Par défaut
    A noter aussi que CurrentDirectory est le répertoire "courant" (donc le répertoire de travail) et non le répertoire où se trouve le programme.

Discussions similaires

  1. [Batch] Construire une variable en parcourant un répertoire
    Par sylsau dans le forum Scripts/Batch
    Réponses: 2
    Dernier message: 09/04/2009, 16h42
  2. Réponses: 5
    Dernier message: 05/08/2008, 09h46
  3. Réponses: 4
    Dernier message: 28/02/2007, 12h09
  4. Empêcher le parcours des répertoires
    Par Tankian dans le forum Sécurité
    Réponses: 5
    Dernier message: 04/03/2005, 15h10

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo