locked
Ejecutar Archivo BAT desde C# RRS feed

  • Pregunta

  • Hola, tengo una aplicación, la cual mediante un “archivo BAT” ejecuta un programa con varias opciones, desde el CMD, y debo ejecutarla desde el C#.

     

    La ejecución del BAT, la realizo de la siguiente manera

    privatevoid button1_Click(object sender,EventArgs e)

           {

               System.Diagnostics.Process.Start(@"c:\iccmsdos\test\xload2.bat");

           }

     

    Con lo cual abre la ventana del CMD  y ejecuta el BAT, La pregunta es cómo puedo hacer para ejecutar el bat desde c# y en lugar de que aparezcan los mensajes en la línea de comandos, aparezcan en un formulario de Windows.

    El  bat es el siguiente

    @echo off

    cls

    echo                                    Aparece primer mensaje que permite seleccionar continuar o abortar

    echo Press ^C to abort, or...

    pause

    echo                                   Mensaje al Aceptar

    @echo off

    mode com2 1200,N,8,1

    copy xload.bin com2 /b

    echo Programming EEPROM now... (takes approximately 20 sec/Kbyte)

    copy %1.s19 com2

    echo                                   Mensaje de Finalizado.

    Espero me puedan ayudar con este tema

    De antemano gracias

    jueves, 15 de abril de 2010 3:14

Respuestas

  • System.Diagnostics.Process process = new System.Diagnostics.Process();
    process.StartInfo.RedirectStandardInput = true;
    process.StartInfo.RedirectStandardOutput = true;

    Despues puedes utilizar por ejemplo process.StandardOutput y asignarle cualquier stream , el que ademas puedes utilizar para escribir o mostrar datos donde desees.

     

     

     


    Juan Carlos Ruiz Microsoft MVP - Visual C# Visita mi blog: http://juank.black-byte.com
    lunes, 19 de abril de 2010 15:35
    Moderador

Todas las respuestas

  • System.Diagnostics.Process process = new System.Diagnostics.Process();
    process.StartInfo.RedirectStandardInput = true;
    process.StartInfo.RedirectStandardOutput = true;

    Despues puedes utilizar por ejemplo process.StandardOutput y asignarle cualquier stream , el que ademas puedes utilizar para escribir o mostrar datos donde desees.

     

     

     


    Juan Carlos Ruiz Microsoft MVP - Visual C# Visita mi blog: http://juank.black-byte.com
    lunes, 19 de abril de 2010 15:35
    Moderador
  • Gracias por la respuesta, voy a iniciar las pruebas

    Saludos.

    lunes, 19 de abril de 2010 21:39
  • como te fue?
    Juan Carlos Ruiz
    Microsoft MVP - Visual C#
    Visita mi blog:

    Ideas de Un Conejo - http://juank.black-byte.com

    miércoles, 21 de abril de 2010 15:43
    Moderador
  • Buenas Juan Carlos, muy buen aporte.. ahora sabrias decirme si se puede hacer un .bat en el cual pueda introducirlo a mi aplicación en C# para que me escanee cuando conecto un dispositivo portatil via usb a la PC... o si se te ocurre otra forma mejor... porque en realidad necesito que mi aplicación al conectar una colectora que tiene Windows CE instalada me reconozca la misma para hacer la descarga de los archivos que tiene o viceversa de la compu a la colectora, y hasta ahora lo unico que encontre fue el reconocimiento de memorias USB y parecidos pero no dispositivos portatiles como un celular o la colectora antes mencionada... si alguien puede darme una mano les agradecería demasiado..!!

    Saludos

    viernes, 3 de junio de 2016 12:40