Maison >développement back-end >C++ >Comment puis-je exécuter des lignes de commande en C # et capturer leur sortie?
Intégration d'outils externes avec C #: exécuter les lignes de commande et capturer la sortie
C # offre des capacités robustes pour interagir avec des applications de ligne de commande externes. Un cas d'utilisation courant consiste à exécuter un outil de comparaison (comme Diff) et à afficher les résultats dans une application C #. Ce guide détaille le processus.
La première étape consiste à créer un objet Process
, à désactiver l'exécution du shell et à activer la redirection de sortie standard:
<code class="language-csharp">Process p = new Process(); p.StartInfo.UseShellExecute = false; p.StartInfo.RedirectStandardOutput = true;</code>
Ensuite, spécifiez le programme de ligne de commande ou le fichier de lots à exécuter (par exemple, YOURBATCHFILE.bat
):
<code class="language-csharp">p.StartInfo.FileName = "YOURBATCHFILE.bat";</code>
Démarrez le processus de manière asynchrone; N'attendez pas l'achèvement avant de récupérer la sortie:
<code class="language-csharp">p.Start();</code>
Récupérer la sortie standard à l'aide de ReadToEnd()
, puis attendez que le processus se termine:
<code class="language-csharp">string output = p.StandardOutput.ReadToEnd(); p.WaitForExit();</code>
La chaîne output
contient désormais les résultats de l'exécution de la ligne de commande, prêt à afficher ou à un traitement ultérieur au sein de votre application C #.
Cette approche, basée sur la documentation MSDN de Microsoft, fournit une méthode fiable pour exécuter des programmes de ligne de commande et récupérer leur sortie en C #.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!