Hi to all.
I am trying to look for some program's output while it is running.
This is my program:
using Gtk;
>
> public class Main
> {
> /*
> public void SpawnCommand (string[] cmd) {
> debug ("Running %s", cmd[0]);
> try {
> Process.spawn_async_with_pipes (null, cmd, null,
> SpawnFlags.SEARCH_PATH | SpawnFlags.DO_NOT_REAP_CHILD, null, out child_pid,
> null, null, null);
> //ChildWatch.add (child_pid, this.child_ended);
> } catch (SpawnError e) {
> error ("Unable to spawn!");
> }
> child_pid_t = (Posix.pid_t) child_pid;
> }
> */
>
> public static int main (string[] args)
> {
> Gtk.init (ref args);
> try {
> var builder = new Builder ();
> builder.add_from_file ("Repositor.ui");
> builder.connect_signals (null);
> var window = builder.get_object ("win_main") as Window;
> window.show_all ();
> window.destroy += Gtk.main_quit;
> Gtk.main ();
> } catch (Error e) {
> stderr.printf ("Could not load UI: %s\n", e.message);
> return 1;
> }
>
> return 0;
> }
>
> public static void execProgram()
> {
> string command_line="/home/arkadi";
> string[] argv = new string[1];
> argv[0] = "/home/arkadi/tt";
> //argv[1] = null;
>
> Pid child_pid;
> int input_fd;
> int output_fd;
> int error_fd;
> try {
> Process.spawn_async_with_pipes(
> command_line,
> argv, //argv
> null, // environment
> SpawnFlags.SEARCH_PATH,
> null, // child_setup
> out child_pid,
> out input_fd,
> out output_fd,
> out error_fd);
> }
> catch (Error e) {
> stderr.printf ("Could not load UI: %s\n", e.message);
> }
> var iochan = new IOChannel.unix_new(output_fd);
> iochan.add_watch(IOCondition.IN, read_from_channel);
> }
>
> public bool read_from_channel(IOChannel source, IOCondition cond) {
> string str;
> size_t c;
> source.read_to_end(out str, out c);
> stdout.printf("%s", str);
> return true;
> }
> }
It doesn't compile and I don't know why... please help...
_______________________________________________
Vala-list mailing list
[email protected]
http://mail.gnome.org/mailman/listinfo/vala-list