@MarX, post #4
@MarX, post #5
@Grzegorz Kraszewski, post #6
#include#include #include #include #include main() { struct Task *MojTask; struct Process *MojProces; struct CommandLineInterface *cli; MojTask=FindTask(NULL); MojProces= (struct Process *)MojTask; cli = BADDR(MojProces->pr_CLI);
@MarX, post #8
@MarX, post #1
char linia[128]; // tu ma wylądować linia odczytana z pipe`a BPTR pipe_out; BPTR pipe_in; BPTR wyjscie; struct TagItem stags[4]; stags[0].ti_Tag = SYS_Input; stags[0].ti_Data = NULL; stags[1].ti_Tag = SYS_Output; stags[1].ti_Data = wyjscie; stags[2].ti_Tag = SYS_Asynch; stags[2].ti_Data = TRUE; stags[3].ti_Tag = TAG_DONE; stags[3].ti_Data = 0; // otwieram pipe do pakowania wynikow pipe_out = Open("PIPE:moj_pipe", MODE_NEWFILE); // otwieram pipe do odczytania wyplutych wczesniej wynikow pipe_in = Open("PIPE:moj_pipe", MODE_OLDFILE); // odpalam jakis konsolowy program SystemTagList("dh1:jakis_tam_program", stags) // odczytuje pierwsza linie z "pajpa" wejsciowego FGets(pipe_in,linia,128 ); printf(" odczytane z pipe %s",linia); Close(pipe_out); Close(pipe_in);