Utiliser la fonction exec [Résolu]

Signaler
Messages postés
64
Date d'inscription
vendredi 6 mai 2011
Statut
Membre
Dernière intervention
8 mai 2013
-
coucou747
Messages postés
12303
Date d'inscription
mardi 10 février 2004
Statut
Modérateur
Dernière intervention
30 juillet 2012
-
Bonjour à tous,

je voudrai savoir comment écrire la fonction exec si par exemple mon executable (a.out) se trouve suivant ce chemin: /home/bureau/test

je veux utiliser exec dans un code en C, je suis sous linux

merci par avance.

5 réponses

Messages postés
1466
Date d'inscription
vendredi 2 janvier 2004
Statut
Modérateur
Dernière intervention
14 février 2014
1
re,

plutôt:

char *args[] = { "/home/bureau/test/a.out", 0 };

execv(args[0], args);

@++
Messages postés
1466
Date d'inscription
vendredi 2 janvier 2004
Statut
Modérateur
Dernière intervention
14 février 2014
1
salut,

char *args[] = { 0 };

execv("/home/bureau/test/a.out", args);

!!! ceci executera le fichier dans le process courant (si j'ai bien compris car pas testé).

Pour executer le fichier dans un autre process:

if (!fork()) execv(...);

@++
Messages postés
64
Date d'inscription
vendredi 6 mai 2011
Statut
Membre
Dernière intervention
8 mai 2013

ca marche merci a toi patatalo
Messages postés
64
Date d'inscription
vendredi 6 mai 2011
Statut
Membre
Dernière intervention
8 mai 2013

j'ai crée une extension php et donc j'ai obtenu une librairie .so (je suis sous linux) qui affiche !hello world! , je veux préciser que dans cette libraire existe une fonction qui s'appelle test et c'est elle qui affiche !hello world!

comment je peux integrer cette libraire en php afin d'afficher !hello world!
Messages postés
12303
Date d'inscription
mardi 10 février 2004
Statut
Modérateur
Dernière intervention
30 juillet 2012
30
Bonjour,

apres une minute de recherche :

http://fr.php.net/manual/en/function.dl.php
http://fr.php.net/manual/en/ini.core.php#ini.extension

Il suffit de lire le manuel, il est très bien fait.

Bonne journée