Re: Vala. Ejecutar un programa externo [solucionado]

2011-05-10 Por tema Fernando Toselli
El mar, 10-05-2011 a las 16:11 -0400, Daniel Molina Wegener escribió:
> On Tuesday 10 May 2011,
> Fernando Toselli  wrote:
> 
> > El mar, 10-05-2011 a las 15:42 -0400, Daniel Molina Wegener escribió:
> > > On Tuesday 10 May 2011,
> > > 
> > > Fernando Toselli  wrote:
> > > > Hola gente, en estos dias me puse a jugar un poco con vala, la verdad
> > > > es que esta muy linda la idea, me gusta. Estoy haciendo un
> > > > programita zonzo como para ir viendo algo, y me he trabado en lo
> > > > siguiente: quiero tener un botoncito gtk que dispare un programa
> > > > externo, ej. Firefox. Todo el tema gtk lo domino bastante porque
> > > > hace varios años que trasteo con mono, lo que no se es como decirle
> > > > a glib que me ejecute un programa externo. Alguien tiene una soguita
> > > > para ir tirando?
> > > > 
> > >   En que lenguaje? C# de Mono o C plano?
> > > 
> > > Atte.
> > 
> > Hola, el tema es asi, vala genera codigo c que luego se compila con gcc,
> > yo lo que quiero, es desde vala escribir el codigo de un boton que me
> > dispare firefox
> > 
> > 
> > codigo vala
> > ...
> > btn_ff.clicked.connect (sale_firefox)
> > ...
> > 
> > private void sale_firefox () {
> > como_disparo_firefox_desde_aqui.
> > }
> > 
> > 
> > Me gustaria que GLib sea el encargado de disparar el proceso, para
> > asegurarme que mi app sea multiplataforma. Tampoco necesito tener
> > control sobre el proceso, solamente que lo ejecute.
> 
>   Puede ser fork(2) + exec*(2)
> 
>   O bien (muy chanta) con system(2)
> 
> > 
> > ---
> > en mono lo hacia con System.Diagnostic.Process.Start();
> > 
> > Saludos y gracias,
> > Fernando Toselli
> 
> Atte.

Gracias gente por la ayuda gente, dejo la solucion por si le sirve a
alguien mas:

private void btn1_clicked () {
  try {
GLib.Process.spawn_command_line_async (firefox) );
  } catch (Error e) {
stderr.printf ("%s\n", e.message); 
  }
}

Si esta corriendo en windows en se ejecuta:
"'C:\\Archivos de programa\\Mozilla Firefox\\firefox.exe'"





Re: Vala. Ejecutar un programa externo

2011-05-10 Por tema Germán Póo-Caamaño
On Tue, 2011-05-10 at 16:31 -0300, Fernando Toselli wrote:
> Hola gente, en estos dias me puse a jugar un poco con vala, la verdad es
> que esta muy linda la idea, me gusta. Estoy haciendo un programita zonzo
> como para ir viendo algo, y me he trabado en lo siguiente: quiero tener
> un botoncito gtk que dispare un programa externo, ej. Firefox. Todo el
> tema gtk lo domino bastante porque hace varios años que trasteo con
> mono, lo que no se es como decirle a glib que me ejecute un programa
> externo. Alguien tiene una soguita para ir tirando?

Seguramente lo que buscas es g_spawn_async o similar.
http://developer.gnome.org/glib/stable/glib-Spawning-Processes.html

-- 
Germán Póo-Caamaño
http://calcifer.org/



Re: Vala. Ejecutar un programa externo

2011-05-10 Por tema Daniel Molina Wegener
On Tuesday 10 May 2011,
Fernando Toselli  wrote:

> Hola gente, en estos dias me puse a jugar un poco con vala, la verdad es
> que esta muy linda la idea, me gusta. Estoy haciendo un programita zonzo
> como para ir viendo algo, y me he trabado en lo siguiente: quiero tener
> un botoncito gtk que dispare un programa externo, ej. Firefox. Todo el
> tema gtk lo domino bastante porque hace varios años que trasteo con
> mono, lo que no se es como decirle a glib que me ejecute un programa
> externo. Alguien tiene una soguita para ir tirando?

  En que lenguaje? C# de Mono o C plano?

Atte.
-- 
Daniel Molina Wegener 
System Programmer & Web Developer
Phone: +56 (2) 979-0277 | Blog: http://coder.cl/


Vala. Ejecutar un programa externo

2011-05-10 Por tema Fernando Toselli
Hola gente, en estos dias me puse a jugar un poco con vala, la verdad es
que esta muy linda la idea, me gusta. Estoy haciendo un programita zonzo
como para ir viendo algo, y me he trabado en lo siguiente: quiero tener
un botoncito gtk que dispare un programa externo, ej. Firefox. Todo el
tema gtk lo domino bastante porque hace varios años que trasteo con
mono, lo que no se es como decirle a glib que me ejecute un programa
externo. Alguien tiene una soguita para ir tirando?