Je voudrais une application de formulaires Windows qui contiendra une interface utilisateur, mais je souhaite qu'il fonctionne à partir de la ligne de commande avec certains paramètres, éventuellement également un Comment est-il possible de lire dans les paramètres de la ligne de commande? Et ajuster en conséquence? P> / masquer code> ou
/ visible = false code> option. p>
4 Réponses :
Si vous modifiez cette signature principale par défaut: à ceci: p> Vous pouvez accéder aux variables de commande comme vous le feriez de Une application de console normale, ou si vous souhaitez y accéder d'ailleurs, vous pouvez utiliser: p>
HAH, cette première méthode est ce que j'ai utilisé dans une explication à un ami un moment de retour. +1
Oui, il devrait fonctionner pour créer le projet en tant que projet d'application Windows normal. Ensuite, dans Program.CS Avant de lancer la fenêtre, appelez Environnement.getCommandLineargs () Code> Pour obtenir les arguments de la ligne de commande et les analyser pour faire ce que vous voulez. P>
[STAThread] static void Main(string[] args) { if (args.Length == 0) { // Run the application in a windows form Application.Run(new MainForm( )); } else { // Run app from CLI Console.WriteLine(DoStuff(args)); } }
+1 pour répondre à la deuxième partie de la question. Vous manquez un support à la fin de l'écrivain (. De plus, je ne pense pas que vous puissiez écrire à la console comme celle-ci dans une application de formulaire Windows.
Vous avez raison que vous ne pouvez pas consoler.writeline à une application WinForms. Le point de ma réponse est que vous n'avez pas besoin de créer une application WindForms, vous pouvez créer une seule exécutable qui fonctionnera sous forme de formulaire ou de ligne de commande en fonction de la manière dont elle est invoquée.
Je viens de tester cela et il n'y a pas de commandwindow ouvert pour le texte, je pense qu'il manque une commande de démarrer la fenêtre COMAMNDLine.
@ Cerc, bonne prise; Un exemple qui se connecte à stdout est ici . console.writeline code> était probablement un mauvais exemple pour un extrait aussi court.