J'essaie de créer un processus sur une machine distante en utilisant la classe System.Diagnostics.Process. Je parviens à créer un processus. Mais le problème est que la création d'un service prend beaucoup de temps et qu'une fenêtre de console s'affiche. Une autre chose ennuyeuse est que la fenêtre de console est affichée au-dessus de mon formulaire Windows et je ne peux pas faire d'autres opérations sur ce formulaire. J'ai défini toutes les propriétés comme CreateNoWindow = true
,
proc.StartInfo.WindowStyle = ProcessWindowStyle.Hidden
J'ai même redirigé la sortie et les erreurs vers des flux distincts, mais sans succès.
Existe-t-il un autre moyen de masquer la fenêtre de la console ? Merci de m'aider.
Voici la partie de mon code que j'ai utilisée pour exécuter la commande sc.
Process proc = new Process();
proc.StartInfo.UseShellExecute = false;
proc.StartInfo.CreateNoWindow = true;
proc.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
proc.StartInfo.FileName = "sc";
proc.StartInfo.Arguments = string.Format(@"\\SYS25 create MySvc binPath= C:\mysvc.exe");
proc.StartInfo.RedirectStandardError = false;
proc.StartInfo.RedirectStandardOutput = false;
proc.StartInfo.UseShellExecute = false;
proc.StartInfo.CreateNoWindow = true;
proc.Start();
proc.WaitForExit();