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 :

Commande CMD avec espace [Débutant]


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    78
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 78
    Par défaut Commande CMD avec espace
    Bonjour,
    Voici mon code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
                string str = " -apply -p " + Application.StartupPath + @"\Tls\\Hui.bps" + " -o sortie " + GlobalVariables.FilePath;
                Process process2 = new Process();
                process2.StartInfo.Arguments = str;
                process2.StartInfo.FileName = Application.StartupPath + @"\Tls\bt.exe";
                process2.StartInfo.CreateNoWindow = true;
                process2.StartInfo.UseShellExecute = false;
                Process process = process2;
                process.Start();
                process.WaitForExit();
    La commande fonctionne lorsque le dossier Tls est dans un chemin sans espace mais pas lorsqu'il en possède.
    Comment faire pour qu'il soit fonctionnel dans les 2 cas ?

    Merci

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    78
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 78
    Par défaut
    J'ai essayé plusieurs "valeurs" pour str mais sans résultat, cela ne fonctionne toujours pas quand le chemin est avec espace.

  3. #3
    Membre Expert
    Homme Profil pro
    edi
    Inscrit en
    Juin 2007
    Messages
    941
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : edi

    Informations forums :
    Inscription : Juin 2007
    Messages : 941
    Par défaut
    Regarde comment ça se passe en ligne commande avec des chemins de fichiers contenant des espaces et ça devrait te donner une idée sur la façon de procéder.

  4. #4
    Expert confirmé
    Avatar de popo
    Homme Profil pro
    Analyste programmeur Delphi / C#
    Inscrit en
    Mars 2005
    Messages
    2 972
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste programmeur Delphi / C#
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 2 972
    Par défaut
    En DOS, si un chemin comporte des espaces, il doit être encadré de double quotes.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    cd C:\Users\XXX\Documents\Test
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    cd "C:\Users\XXX\Documents\Dossier Test"

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    78
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 78
    Par défaut
    Bonjour et merci de vos réponses et directions de recherche,

    J'ai inséré des guillemets avec \" :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Application.DoEvents();
                string str1 = Application.StartupPath + @"\Tls\Hui.bps";
                string nout = Application.StartupPath + @"\entre";
                string nint = GlobalVariables.FilePath;
                string str = " - apply -p \"" + str1 + "\" - o \"" + nout  + "\" " + "\"" + nint + "\"";
                Process process2 = new Process();
                process2.StartInfo.Arguments = str;
                process2.StartInfo.FileName = "\" + Application.StartupPath + @"\Tls\bt.exe \"";
                process2.StartInfo.CreateNoWindow = true;
                process2.StartInfo.UseShellExecute = false;
                Process process = process2;
                process.Start();
                process.WaitForExit();
    Mais le résultat n'est pas là, malheureusement.

    Les guillemets s'insèrent bien avec \" ?

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    78
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 78
    Par défaut
    J'ai l'impression qu'"il" me met des \" au lieu des guillemets, le process2.StartInfo.FileName donne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    apply -p \"J:\\Documents\\*** *** ***\\WindowsFormsApp1\\bin\\Debug\\Tls\\Hui.bps\" - o \"J:\\Documents\\*** *** ***\\WindowsFormsApp1\\bin\\Debug\\sortie\" \"J:\\Documents\\*** *** ***\\WindowsFormsApp1\\bin\\Debug\\entre\""

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Batch] Ligne de commande avec un chemin avec espaces
    Par Oluha dans le forum Scripts/Batch
    Réponses: 17
    Dernier message: 11/10/2018, 10h36
  2. Exécuter des commandes cmd avec du code Java
    Par hakim008 dans le forum Entrée/Sortie
    Réponses: 0
    Dernier message: 13/03/2016, 10h48
  3. Commande DOS avec espace
    Par cedji dans le forum C++
    Réponses: 16
    Dernier message: 23/07/2015, 17h28
  4. Commande conditionnelle avec cmd.exe
    Par lastrecrue dans le forum Windows XP
    Réponses: 1
    Dernier message: 31/08/2006, 16h27
  5. renomage d'un fichier avec commande cmd
    Par timsah dans le forum Autres Logiciels
    Réponses: 8
    Dernier message: 27/10/2005, 18h03

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