Tengo un problema cuando la salida de la consola se devuelve en 'ondas'. Por ejemplo, la consola genera algo por segundo y, por ejemplo, el evento se dispara 60 veces por minuto (todos los eventos al mismo tiempo).Leyendo otra salida de la consola de proceso
Mi código:
Process Proc = new Process();
Proc.StartInfo.FileName = SSMS.BinaryDir + "HldsUpdateTool.exe";
Proc.StartInfo.Arguments = "-command update -game tf -dir " + SSMS.RootDir + Key;
Proc.StartInfo.UseShellExecute = false;
Proc.StartInfo.RedirectStandardOutput = true;
Proc.StartInfo.RedirectStandardError = true;
Proc.EnableRaisingEvents = true;
Proc.StartInfo.CreateNoWindow = false;
Proc.ErrorDataReceived += new DataReceivedEventHandler(Proc_ErrorDataReceived);
Proc.OutputDataReceived += new DataReceivedEventHandler(Proc_OutputDataReceived);
Proc.Exited += new EventHandler(Proc_Exited);
Proc.Start();
Proc.BeginErrorReadLine();
Proc.BeginOutputReadLine();
podría sospechar que hay un problema con la herramienta de actualización. Otros programas con salida de consola funcionan bien.
En línea de tiempo en que se desencadenan eventos: (= no pasó nada; | suceso activado)
Should be: ==|==|==|==|==|==|==
Is: ========|||||||=========||||||=====
Creo que debe enjuagar la salida. No sé cómo de todos modos – BlackBear