Partage
  • Partager sur Facebook
  • Partager sur Twitter

Masquer le programme

    8 mai 2011 à 14:34:31

    Bonjour, j'ai crée un programme C# en console, mais j'aimerais que ce programme ne soit pas montré dans la barre des taches, quand il est exécuté. Connaissez vous une propriété qui me permettrai de le faire? Merci.
    • Partager sur Facebook
    • Partager sur Twitter
      8 mai 2011 à 15:26:47

      Sur un programme type console, c'est moins évident que sur un programme à interface graphique => première solution google ici.

      Dans les grandes lignes, il s'agit de récupérer un handle vers la fenêtre de ta console pour le détruire.

      Edit : Même solution mais autre article.
      • Partager sur Facebook
      • Partager sur Twitter
        8 mai 2011 à 17:02:39

        Merci beaucoup ! Et sinon pour masquer le programme à interface graphique comme Windows Form ça se passe comment?
        • Partager sur Facebook
        • Partager sur Twitter
          9 mai 2011 à 12:08:35

          Il suffit de ne jamais afficher de fenêtre ^^.

          La classe Application te permet de gérer le cycle de vie du processus en fonction d'une fenêtre principale. C'est le schéma par défaut lorsqu'on crée un projet Windows Form => A l'appel de la méthode Main, ça appelle Application.Run(new Form1()); .

          Maintenant, si, à la place d'appeler Application.Run dans Main, tu fais une boucle du type :
          for(int i = 0; i != 5; i++)
          {
               System.Threading.Thread.Sleep(1000);//Endort le thread pendant 1 seconde
          }
          


          Ton programme s'exécutera correctement, tu ne verras rien s'afficher à l'écran. Au bout de 5 secondes, ton processus sera automatiquement détruit et le programme s'arrêtera.
          • Partager sur Facebook
          • Partager sur Twitter
            9 mai 2011 à 12:39:48

            Citation : Nisnor

            Il suffit de ne jamais afficher de fenêtre ^^.


            En général on préfère afficher une fenêtre invisible. Ca permet d'une part de la faire apparaitre temporairement si d'aventure c'était nécessaire, et d'autre part d'afficher une icone dans le SystemTray pour informer discrètement l'utilisateur que l'application est en marche et lui permettre d'intéragir avec elle. ;)

            Pour rendre une fenêtre invisible il suffit d'ajuster ses propriétés:
            this.Opacity = 0f;
            this.ShowInTaskbar = false;
            this.Visible = false;
            
            • Partager sur Facebook
            • Partager sur Twitter
              17 mai 2011 à 15:16:21

              sinon il y a :
              Me.hide()
              'Me est la forme a cacher depuis cette meme forme
              

              Pour cacher la form 2 depuis la form1 :
              Form2.hide()
              
              • Partager sur Facebook
              • Partager sur Twitter

              Masquer le programme

              × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
              × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
              • Editeur
              • Markdown