Título: Como veo el standardoutput de la CMD en la própia CMD? Publicado por: Eleкtro en 11 Enero 2013, 10:29 am Estoy intentando hacer pruebas,
Lo que quiero es poder abrir un comando en la CMD y que la consola no se cierre, por ejemplo: Código
Pero la CMD se cierra. Así que he intentado ejecutar un FOR de Batch muy largo en la CMD para ver si así no se cierra... Código
y no, no se cierra (Porque el FOR tarda en finalizar, cuando acaba si que se cierra claro xD) pero ahora lo que ocurre además es que el output de la CMD no se muestra en la CMD!, es decir, el FOR no muestra nada. EDITO: Vale, he descubierto que el output no se muestra en la CMD porque al habilitar la propiedad de redireccionar el Standard u Error output, no muestra el output en la CMD. Así que quiero solucionar los dos problemas: 1. Que la CMD no se cierre cuando finaliza la orden, el comando. 2. Que el output se muestre en la CMD cuando habilito la propiedad RedirectStandardOutput = True y/o RedirectStandardError = True Este es el code, es un snippet que estoy intentando hacer: Código
Título: Re: Como veo el standardoutput de la CMD en la própia CMD? Publicado por: kub0x en 11 Enero 2013, 14:47 pm EDITO: Vale, he descubierto que el output no se muestra en la CMD porque al habilitar la propiedad de redireccionar el Standard u Error output, no muestra el output en la CMD. Eso se debe a que tienes que inicializar la propiedad "UseShellExecute" a False, ya que para redireccionar los flujos de entrada/salida/error utilizarás la clase Process. UseShellExecute, como habrás visto crea una nueva instancia del CMD en la ruta donde se encuentre el ensamblado, con la que puedes interactuar como si de la Shell del sistema se tratase, solo que no puedes capturar los errores y las salidas. Básicamente lo que hago es escribir en el Flujo de entrada del CMD, de esta forma consigo enviarle comandos en un Bucle que tiene como condición ejecutar los comandos hasta que el Comando sea nulo. En segundo plano capturo el evento OutPutDataRecieved asíncronicamente lo que me permite Leer y Escribir en la CMD a la vez ;) Código
Saludos! Título: Re: Como veo el standardoutput de la CMD en la própia CMD? Publicado por: Eleкtro en 11 Enero 2013, 15:27 pm Demasiado bueno para ser cierto, leer, escribir, y sin cerrarse la CMD
Pero... ¿Hay forma de modificar el SUB OutPutDataArrival para hacerlo funcionar en un WinForm? gracias |