Fecha y hora actual: Sab 19 May, 2012 20:58 pm
Índice del Foro

Foros de programación informática, diseño gráfico y Web

En esta comunidad intentaremos dar soporte de programación a todos los niveles, desde principiantes a profesionales de la informática, desarrollo de programas, programación web y mucho más.

Ejecutar comando MAKE?¿

Responder al Tema

Índice del Foro > C, C#, Visual C++ > Ejecutar comando MAKE?¿

Autor Mensaje
KeiDash



Registrado: 11 Ene 2012
Mensajes: 1

Mensaje Publicado: Mie 11 Ene, 2012 13:58 pm

Título del mensaje: Ejecutar comando MAKE?¿

Responder citando

Hola buenas a todos.

Dispongo de un fichero .bat genera lo siguiente

Código:

path=%path%;C:\ngpcbins\T900\bin
SET THOME=C:\ngpcbins\T900
cd "C:\Proyecto"
MAKE


He estado mirando la clase Process para ejecutar comandos desde C#. En principio, tengo un método que construye el objeto Process, dandole como parámetro este fichero .bat, y lo ejecuto con Process.Start()

Hasta ahí no hay problema, pero luego cuando compruebo el directorio ("C:\Proyecto") el Make no ha hecho absolutamente nada (tendría que compilar ciertos ficheros y sacar otros como resultado) en cambio, si ejecuto el fichero .bat desde una consola de comandos si lo realiza.

Código:

private Boolean RunCompile(string FileToCompile)
        {
            ProcessStartInfo lProc = new ProcessStartInfo();
            Process lOutput = new Process();

            Process lPProcess = new Process();

            try
            {

                lPProcess.StartInfo.FileName = "C:\env.bat";
                lPProcess.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
                lPProcess.StartInfo.CreateNoWindow = false;
                lPProcess.StartInfo.RedirectStandardError = true;
                lPProcess.StartInfo.RedirectStandardOutput = true;
                lPProcess.StartInfo.UseShellExecute = false;
                lPProcess.Start();

                //lPProcess.BeginOutputReadLine();
                string outReply = lPProcess.StandardOutput.ReadToEnd();

                //lPProcess.BeginErrorReadLine();
                string errReply = lPProcess.StandardError.ReadToEnd();

                lPProcess.WaitForExit();

                if (lPProcess.HasExited)
                {
                    if (outReply.ToLower().IndexOf("BlackThunder") > -1)
                    {
                        lstOutput.Text = "Compilación generada correctamente.";
                    }
                    else
                    {
                        //Mal
                        lstOutput.Text = outReply;
                    }
                }

                return true;
            }
            catch (Exception ex)
            {
                return false;
                throw new Exception(ex.Message);
            }
        }


¿Alguien sabe que puedo estar haciendo mal o que pruebas podría realizar? Me da la sensación de que no puedo lanzar el MAKE desde .Net

Saludos y gracias.[/code]

Volver arriba
Ver perfil del usuario Enviar mensaje privado
WhiteSkull
Moderador Global


Registrado: 20 Mar 2009
Mensajes: 2084
Ubicación: y*width+x

Mensaje Publicado: Jue 12 Ene, 2012 17:56 pm

Título del mensaje: Re: Ejecutar comando MAKE?¿

Responder citando

Bueno que el MAKE debería compilar ficheros... creo que no entiendes realmente que hace el comando MAKE. El MAKE, es una herramienta que sirve "pa" muchas cosas, entre ellas es la muy usada por algunos programadores que pasan de usar entornos de programación, y todo lo hacen a pelo, para ello crean un ficherito muy famoso que el MAKE lo interpreta y lo ejecuta tal como el ficherito le indica, el makefile, en las cosas que podemos incluir en un makefile es por ejemplo, el compilador que se usará.

El compilador de Microsoft hasta no hace mucho era el CSC.EXE, no me acuerdo como se llama el de Mono, que es la alternativa al de Microsoft, y también desconozco el de Embarcadero.

Si realmente quieres saber porque el MAKE no hace su trabajo, entonces deberías buscar el makefile y echarle un ojo.


http://www.youtube.com/watch?v=-lT1zCukNQY
Volver arriba
Ver perfil del usuario Enviar mensaje privado Visitar sitio web del autor
Responder al Tema
Mostrar mensajes anteriores:   
Ir a:  
Todas las horas están en GMT + 2 Horas

Temas relacionados

Tema Autor Foros Respuestas Publicado
El foro no contiene ningún mensaje nuevo

¿Qué comando puedo usar para que scilab busque ...

HeyLorraine Programación en general 0 Jue 23 Feb, 2012 23:51 pm Ver último mensaje
El foro no contiene ningún mensaje nuevo

Ejecutar programas

sascuash Java 3 Sab 10 Dic, 2011 21:48 pm Ver último mensaje
El foro no contiene ningún mensaje nuevo

Ejecutar archivo .exe con java servlet

Jignesh Java 0 Jue 08 Dic, 2011 17:42 pm Ver último mensaje
El foro no contiene ningún mensaje nuevo

shell script comando cp

sesiopower S.O. Linux 1 Lun 28 Nov, 2011 12:59 pm Ver último mensaje
El foro no contiene ningún mensaje nuevo

Ejecutar WebApplication

Jhony Java 1 Vie 08 Oct, 2010 16:29 pm Ver último mensaje
Panel de Control
No puede crear mensajes, No puede responder temas, No puede editar sus mensajes, No puede borrar sus mensajes, No puede votar en encuestas,