Antes de decir que es una pregunta duplicada, déjame explicarte (ya que he leído todos los hilos similares).Ocultar ventana de comandos en la aplicación C#
Mi aplicación tiene tanto de estas opciones:
procStartInfo.CreateNoWindow = true;
procStartInfo.WindowStyle = ProcessWindowStyle.Hidden;
y es también tiene WindowsApplication como tipo de salida.
La ventana negra STILL aparece cuando llamo a un comando de línea de comando. ¿Hay algo más que pueda hacer para ocultar la ventana? No sucede con todos los comandos, XCOPY es una situación donde la ventana negra se enciende. Esto solo sucede cuando el destino en el que estoy XCOPYing también contiene el archivo y me está preguntando si deseo reemplazarlo. Incluso si paso/Y, todavía parpadeará brevemente.
Estoy abierto a usar vbscript si eso ayuda, ¿pero alguna otra idea?
El cliente va a llamar a mi ejecutable y luego pasar en un ejemplo de comando de línea de comandos:
C:\MyProgram.exe start XCOPY c:\Test.txt c:\ProgramFiles\
Aquí está el código completo de la solicitud:
class Program
{
static void Main(string[] args)
{
string command = GetCommandLineArugments(args);
// /c tells cmd that we want it to execute the command that follows and then exit.
System.Diagnostics.ProcessStartInfo procStartInfo = new System.Diagnostics.ProcessStartInfo("cmd.exe", "/c " + command);
procStartInfo.RedirectStandardOutput = true;
procStartInfo.UseShellExecute = false;
// Do not create the black window.
procStartInfo.CreateNoWindow = true;
procStartInfo.WindowStyle = ProcessWindowStyle.Hidden;
System.Diagnostics.Process process = new System.Diagnostics.Process();
process.StartInfo = procStartInfo;
process.Start();
}
private static string GetCommandLineArugments(string[] args)
{
string retVal = string.Empty;
foreach (string arg in args)
retVal += " " + arg;
return retVal;
}
}
se puede publicar el resto de su 'Process' /' c ProcessStartInfo' ¿oda? –
@fletcher: Se establece en la pregunta que el tipo de salida es la aplicación de Windows y no la consola. Lo he probado con el tipo de salida establecido en la aplicación de Windows y funciona bien. @snow: Verificaría dos veces la configuración de OutputType. – nukefusion
@fletcher ¡Ese es realmente el problema! Me gustaría que la ventana no se muestre en absoluto. – mint