On Monday 24 June 2002 05:27 pm, Dorin Lazar wrote:
> daca vrei sa rulezi un "ls -la" se poate in doua feluri
> 1) system
> if (system("ls -la"))
>       printf("comanda a eshuat\n");
> else
>       printf("succes");
>
> 2) varianta 'grea'
> extern char **environ;
> int status;
> int PID = fork();
> if (PID>0) {
>       char **comanda = malloc (sizeof(char*)*3);
>       comanda[0] = "ls";
>       comanda[1] = "-la";
>       comanda[2] = NULL;
>       execve ("/bin/ls", comanda, environ);
>       printf ("Eroare exec");
>       exit(1);
> }
> else
>       if (PID<0) {
>               printf ("eroare fork");
>               exit(1);
>       }
> wait(&status);

Am testat varianta "grea" si functioneaza bine atunci cand totul e OK. Dar eu 
lucrez la o aplicatie cu interfata grafica, si comanda execve imi distruge 
enviroment-ul, deci nu mai pot sa afisez un messagebox care sa-l avertizeze 
pe user ca e ceva in neregula.

-- 
Serghei.
---
Pentru dezabonare, trimiteti mail la
[EMAIL PROTECTED] cu subiectul 'unsubscribe rlug'.
REGULI, arhive si alte informatii: http://www.lug.ro/mlist/


Raspunde prin e-mail lui