2010-02-17 4 views
1

Maintenant la réponse évidente est simplement d'ouvrir le script à partir d'une ligne de commande, mais ce n'est pas une option. J'écris une application simple pour mettre en évidence la syntaxe de Python et ensuite exécuter les scripts du même programme. Un IDE Python si vous voulez. Les scripts que je veux exécuter sont entièrement des programmes en ligne de commande. J'utilise un objet System.Diagnostics.Process. Je peux l'utiliser pour exécuter une invite de ligne de commande ou pour exécuter le script Python, mais la fenêtre de ligne de commande se fermera dès que les erreurs de script ou se termine. Je dois le garder ouvert. La solution idéale serait d'ouvrir la ligne de commande et d'exécuter le script Python à partir de la ligne de commande, mais je dois le faire en un clic depuis l'intérieur d'une application .Net.Comment conserver une fenêtre de commande de script Python ouverte à partir d'une application .Net?

Des idées? Y a-t-il un meilleur moyen de garder la console ouverte?

Répondre

1

N'utilisez pas une console Windows. Créez votre propre panneau ou fenêtre de console qui se rattache aux stdin, stdout et stderr de l'exécutable de l'interpréteur. Ou embed your own interpreter.

0

J'ai eu un problème similaire, je l'ai résolu en ajoutant raw_input() à la fin du script. Même s'il n'utilise pas la valeur que le script doit contenir avant de quitter car il attend une entrée de la ligne de commande. Malheureusement, cela n'aide pas si le script est erroné avant qu'il n'atteigne la ligne raw_input(), mais vous verrez à quelle distance il se trouve.

Questions connexes