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 :

Lire invite de commandes


Sujet :

C#

  1. #1
    Nouveau membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Février 2018
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2018
    Messages : 21
    Points : 25
    Points
    25
    Par défaut Lire invite de commandes
    Bonjour,
    Je suis en train d’écrire un code avec un bouton dans Outlook. Quand on déclenche le bouton, j’aimerais que se lance l’invite de commandes de Windows et récupérer ce que l’utilisateur écrit dans l’invite de commandes.

    J'ai déjà ce bout de code qui permet d'écrire dans l'invite de commandes:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    Process process = new Process();
    process.StartInfo.FileName = "cmd.exe"; //Accès à l'invite de commandes
    process.StartInfo.Arguments = "cmd /k echo Entrez votre texte"; // Commande à exécuter
    process.StartInfo.UseShellExecute = false;
    process.Start();
    Mais je ne sais pas quelle ligne écrire pour récupérer ce qui est écrit ensuite dans l’invite de commandes. Quelqu'un a une idée ?

    Merci d'avance

  2. #2
    Expert confirmé
    Avatar de popo
    Homme Profil pro
    Analyste programmeur Delphi / C#
    Inscrit en
    Mars 2005
    Messages
    2 674
    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 674
    Points : 5 259
    Points
    5 259
    Par défaut
    Pourquoi vouloir passer par la console alors que tu pourrais utiliser les outils standard comme Interaction.InputBox ?
    ça paraîtra moins vieillot et beaucoup moins bricolage.

  3. #3
    Nouveau membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Février 2018
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2018
    Messages : 21
    Points : 25
    Points
    25
    Par défaut
    Merci pour votre réponse.

    Mais si j'utilise Interaction.InputBox, est-ce qu'un utilisateur qui a installé mon complément Outlook mais qui n'a pas Visual Studio pourra l'utiliser ?

  4. #4
    Expert confirmé
    Avatar de popo
    Homme Profil pro
    Analyste programmeur Delphi / C#
    Inscrit en
    Mars 2005
    Messages
    2 674
    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 674
    Points : 5 259
    Points
    5 259
    Par défaut
    A partir du moment où tu ajoutes une références à ton projet (ici Microsoft.VisualBasic), la dll est copiée dans le répertoire de sortie de ton binaire.
    Il te suffit donc de l'inclure dans ton processus d'installation.

    S'il s'agit d'une référence au framework, tu n'a même pas à t'en soucier.
    Il suffit de mettre un prérequis sur le framework.
    Par défaut, il y a forcément un framework .Net installé sur chaque machine Windows.
    Si tu vises le Framework .Net 4.0, tu pourra même descendre jusqu'aux XP.

    S'il fallait installer un Visual Studio sur chaque poste où on installe un programme en .net, personne ne l'utiliserait.

  5. #5
    Expert confirmé
    Avatar de wallace1
    Homme Profil pro
    Administrateur systèmes
    Inscrit en
    Octobre 2008
    Messages
    1 966
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Administrateur systèmes
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 966
    Points : 4 005
    Points
    4 005
    Billets dans le blog
    7
    Par défaut
    Bonsoir,
    Si tu veux absolument utiliser une fenêtre cmd tu peux orienter tes pistes avec les mots-clés :

    redirectstandardinput
    redirectstandardoutput

    En utilisant toujours la classe Process.

    Cela dit popo a raison une inputbox est plus user friendly mais qu en sera t il pour le résultat de sortie.... 😉

    Bon codage++

  6. #6
    Expert confirmé
    Avatar de popo
    Homme Profil pro
    Analyste programmeur Delphi / C#
    Inscrit en
    Mars 2005
    Messages
    2 674
    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 674
    Points : 5 259
    Points
    5 259
    Par défaut
    Interaction.InputBox renvoie une chaîne, donc pas de souci pour le retour.
    Sinon, si tu veux rester sur du framework standard, rien ne t’empêche de créer ta propre InputBox, ça se fait très rapidement.

  7. #7
    Expert confirmé
    Avatar de wallace1
    Homme Profil pro
    Administrateur systèmes
    Inscrit en
    Octobre 2008
    Messages
    1 966
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Administrateur systèmes
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 966
    Points : 4 005
    Points
    4 005
    Billets dans le blog
    7
    Par défaut
    Citation Envoyé par popo Voir le message
    Interaction.InputBox renvoie une chaîne, donc pas de souci pour le retour.
    Effectivement tu as raison , je pense n'avoir jamais utilisé d'InputBox depuis mes débuts en programmation.... car comme tu le conseilles je développe mes propres fenêtres d'interaction utilisateur. Cependant dans certains projets j'affiche le résultat de la fenêtre console dans une textbox multi-lignes comme ceci (5ème frame du .gif):

    Nom : usmtmig63.gif
Affichages : 135
Taille : 188,4 Ko


    ++

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

Discussions similaires

  1. L'invite de commande ne veut plus lire les fichiers .pl (windows 10)
    Par spinnfire67 dans le forum Programmation et administration système
    Réponses: 4
    Dernier message: 21/09/2016, 08h35
  2. Comment lire un wav en invite de commande
    Par sdx dans le forum Applications et environnements graphiques
    Réponses: 3
    Dernier message: 02/10/2005, 01h54
  3. compilation avec invite de commandes
    Par new_wave dans le forum Général Java
    Réponses: 1
    Dernier message: 21/07/2005, 22h32
  4. Ecrire dans l'invite de commande
    Par Joeleclems dans le forum MFC
    Réponses: 9
    Dernier message: 08/06/2005, 13h19
  5. [Clavier] Gestion d'une invite de commandes
    Par Damian dans le forum Assembleur
    Réponses: 9
    Dernier message: 28/04/2005, 16h41

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