3 votes

Terminal Ubuntu ne attend pas l'entrée Console.ReadKey()

Je suis en train d'utiliser MonoDevelop pour écrire des codes C# (.NET) sur Ubuntu Desktop 14.0.5 LTS. En testant un simple code Hello World, j'ai rencontré un problème - auparavant sur Windows, j'utilisais l'instruction Console.ReadKey() pour m'assurer que la console ne disparaissait pas instantanément après l'affichage de la sortie. Cependant, cette astuce ne fonctionne pas sur Ubuntu. Voici le code, au cas où vous auriez besoin de le voir:

using System;

namespace Project_1 {
    class MainClass {
        public static void Main (string[] args) {
            Console.WriteLine ("Hello World!");
            Console.ReadKey ();
        }
    }
}

Malgré la dernière instruction, la console s'affiche pendant environ 1/100e de seconde avant de disparaître. Précisément, l'instruction Console.ReadKey() est ignorée(??). Je n'ai aucune idée de pourquoi cela se produit. Je débute sur Ubuntu et j'ai installé MonoDevelop il y a quelques heures.

Comment puis-je résoudre ce problème ?

2voto

karel Points 97032

Vous devez installer mono-complete au lieu du package d'outils de développement Mono (mono-devel) si vous souhaitez exécuter des logiciels pour Mono ou Microsoft .NET que vous n'installez pas à partir d'un package Debian.


  1. Installer mono-complete

     sudo apt-get install mono-complete
  2. Enregistrez votre code C# dans un fichier appelé hello.cs.

  3. Rendez le fichier hello.cs exécutable. Cliquez avec le bouton droit sur le fichier hello.cs -> sélectionnez Propriétés -> onglet Autorisations -> cochez à gauche de Autoriser l'exécution du fichier en tant que programme.

  4. Changez de répertoire en utilisant la commande cd vers le répertoire contenant le fichier hello.cs.

  5. Utilisez le compilateur mcs et créez un exécutable Windows nommé hello.exe à partir de la source hello.cs.

     mcs -out:hello.exe hello.cs
  6. Exécutez le programme hello.exe avec mono.

     mono hello.exe
  7. Les résultats de l'exécution de votre programme à l'étape 6. devraient être :

     Hello World!  
  8. Appuyez sur la touche Entrée pour revenir à l'invite de commande du terminal par défaut.

Exécuter un programme C# dans MonoDevelop

  1. Installer MonoDevelop

     sudo apt-get install monodevelop # 17.10 et versions antérieures
  2. Ouvrez l'application MonoDevelop.

  3. Créez un nouveau projet. Sélectionnez Fichier -> Nouveau -> Solution -> .NET -> Projet Console -> vérifiez le menu déroulant à côté de Projet Console pour vérifier que C# est sélectionné -> cliquez sur le bouton Suivant -> sélectionnez un nom et un emplacement de répertoire pour votre projet -> cliquez sur le bouton Créer.

  4. Dans le volet de gauche, sélectionnez Program.cs. Copiez votre code C# dans Program.cs.

  5. Sélectionnez Construire -> Construire tout.

  6. Cliquez sur la flèche de lecture dans le coin supérieur gauche de MonoDevelop pour exécuter le programme.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X