Laisse moi t'expliquer.
Ce programme est un programme disons... "bas niveau" dans le sens où il doit pouvoir, s'il est en static, fonctionner sur n'importe quelle machine, dans un / vide, complètement vide !
Actuellement, il utilise des commandes comme tar, md5sum... J'aimerais que ces commandes soient :
- soit remplacées par des libs C (c'est faisable pour tar...)
- n'utilisent pas l'appel system qui a le défaut de lancer /bin/sh, qui n'est pas disponible lors de l'utilisation de mon programme...
En gros, je souhaite coder une fonction qui ressemble à ça :
int my_system (std::string commande)
int my_system (std::string commande1, ...) (nombre d'arguments variable, j'y arrive pas :(
int my_system (std::string commande[]) (j'ai réussi, mais le pb c'est que mon tableau passé en argument ne convient pas :(
J'ai essayé de l'appeler comme ça : my_system(["tar", "-zxvf","/test.tar.gz"]) et il refuse pour d'obscures raisons...
[^] # Re: execle(...);
Posté par Pinaraf . En réponse au message Lancer un programme, comment ?. Évalué à 1.
Ce programme est un programme disons... "bas niveau" dans le sens où il doit pouvoir, s'il est en static, fonctionner sur n'importe quelle machine, dans un / vide, complètement vide !
Actuellement, il utilise des commandes comme tar, md5sum... J'aimerais que ces commandes soient :
- soit remplacées par des libs C (c'est faisable pour tar...)
- n'utilisent pas l'appel system qui a le défaut de lancer /bin/sh, qui n'est pas disponible lors de l'utilisation de mon programme...
En gros, je souhaite coder une fonction qui ressemble à ça :
int my_system (std::string commande)
int my_system (std::string commande1, ...) (nombre d'arguments variable, j'y arrive pas :(
int my_system (std::string commande[]) (j'ai réussi, mais le pb c'est que mon tableau passé en argument ne convient pas :(
J'ai essayé de l'appeler comme ça : my_system(["tar", "-zxvf","/test.tar.gz"]) et il refuse pour d'obscures raisons...