Estoy tratando de crear un proceso en una máquina remota usando la clase System.Diagnostics.Process. Puedo crear un proceso. Pero el problema es que crear un servicio lleva mucho tiempo y se muestra la ventana de la consola. Otra cosa molesta es que la ventana de la consola se muestra en la parte superior de mi formulario de Windows y no puedo hacer ninguna otra operación en ese formulario. He configurado todas las propiedades como CreateNoWindow = true
,
proc.StartInfo.WindowStyle = ProcessWindowStyle.Hidden
pero aún muestra la ventana de la consola. incluso he redirigido la salida y los errores a una secuencia separada, pero no tuve suerte.
¿Hay alguna otra forma de ocultar la ventana de la consola? Por favor, ayúdame .
Aquí está la parte de mi código que utilicé para ejecutar el comando 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
y CreateNoWindow
dos veces?
proc.StartInfo.RedirectedStandardOutput = true
? He conseguido que esto funcione con una aplicación de Windows.