Maison > développement back-end > C++ > Comment exécuter plusieurs commandes dans un seul processus à l'aide de .NET ?

Comment exécuter plusieurs commandes dans un seul processus à l'aide de .NET ?

Patricia Arquette
Libérer: 2024-12-31 09:09:10
original
651 Les gens l'ont consulté

How to Execute Multiple Commands in a Single Process Using .NET?

Exécuter plusieurs commandes dans un seul processus avec .NET

Afin d'exécuter plusieurs commandes à l'aide d'un seul processus dans .NET, il faut pour créer d'abord une instance de la classe 'Process', ainsi qu'un objet 'ProcessStartInfo' correspondant pour configurer le process.

Ensuite, activez la redirection de l'entrée standard en définissant la propriété 'RedirectStandardInput' dans l'objet 'ProcessStartInfo' sur 'true' et désactivez l'utilisation de l'exécution du shell en définissant 'UseShellExecute' sur 'false'. .

Une fois le processus correctement configuré, on peut le lancer en appelant la méthode 'Start' sur le Objet 'Processus'. Cela démarrera le processus et l'associera aux flux d'entrée, de sortie et d'erreur standard.

Pour écrire dans le flux d'entrée standard du processus, un objet 'StreamWriter' peut être obtenu à l'aide de la propriété 'StandardInput'. sur l'objet 'Processus'. En utilisant la méthode 'WriteLine' sur ce flux, on peut écrire des commandes à exécuter par le processus.

Pour illustrer cela, considérons le code suivant, qui démontre l'exécution de plusieurs commandes MySQL à l'aide d'un seul processus :

Process p = new Process();
ProcessStartInfo info = new ProcessStartInfo();
info.FileName = "cmd.exe";
info.RedirectStandardInput = true;
info.UseShellExecute = false;

p.StartInfo = info;
p.Start();

using (StreamWriter sw = p.StandardInput)
{
    if (sw.BaseStream.CanWrite)
    {
        sw.WriteLine("mysql -u root -p");
        sw.WriteLine("mypassword");
        sw.WriteLine("use mydb;");
    }
}
Copier après la connexion

Ce code crée un processus pour l'exécutable 'cmd.exe', redirige l'entrée standard et désactive l'exécution du shell. À l'intérieur du bloc « using », un « StreamWriter » est utilisé pour écrire des commandes sur l'entrée standard, notamment la connexion au serveur MySQL, la fourniture du mot de passe et la sélection de la base de données souhaitée. En exécutant ces commandes dans un seul processus, on peut éviter de créer plusieurs processus et garantir que les commandes sont exécutées dans un ordre spécifique.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal