J'essaie de créer un processus sur une machine distante en utilisant la classe System.Diagnostics.Process. Je suis capable de créer un processus. Mais le problème est que la création d'un service prend beaucoup de temps et la fenêtre de la console s'affiche. Une autre chose ennuyeuse est que la fenêtre de la 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
mais il montre toujours la fenêtre de la console. même j'ai redirigé la sortie et les erreurs vers un flux séparé mais pas de chance.
Existe-t-il un autre moyen de masquer la fenêtre de la console? Sil te plait aide moi .
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();
UseShellExecute
et CreateNoWindow
deux fois?
proc.StartInfo.RedirectedStandardOutput = true
? J'ai réussi à faire fonctionner cela avec une application Windows.