Executer un programme c en php
Fermé
yuri648
Messages postés
677
Date d'inscription
mardi 30 décembre 2008
Statut
Membre
Dernière intervention
20 mai 2015
-
5 mai 2011 à 18:53
creadiff Messages postés 445 Date d'inscription samedi 3 avril 2010 Statut Membre Dernière intervention 3 novembre 2011 - 6 mai 2011 à 19:53
creadiff Messages postés 445 Date d'inscription samedi 3 avril 2010 Statut Membre Dernière intervention 3 novembre 2011 - 6 mai 2011 à 19:53
Bonjour,
j'ai un programme en c que je veux l'éxecuter avec php
j'ai essayé avec la commande
system('./prgm'); et sa na pas marché
merci
j'ai un programme en c que je veux l'éxecuter avec php
j'ai essayé avec la commande
system('./prgm'); et sa na pas marché
merci
A voir également:
- Executer un programme c en php
- Programme demarrage windows 10 - Guide
- Mettre en veille un programme - Guide
- Easy php - Télécharger - Divers Web & Internet
- Cette action ne peut pas être réalisée car le fichier est ouvert dans un autre programme - Guide
- Forcer la fermeture d'un programme - Guide
5 réponses
creadiff
Messages postés
445
Date d'inscription
samedi 3 avril 2010
Statut
Membre
Dernière intervention
3 novembre 2011
57
5 mai 2011 à 19:04
5 mai 2011 à 19:04
Est-ce que ça fonctionne quand tu exécutes ./prgm directement depuis le shell ?
yuri648
Messages postés
677
Date d'inscription
mardi 30 décembre 2008
Statut
Membre
Dernière intervention
20 mai 2015
7
5 mai 2011 à 23:42
5 mai 2011 à 23:42
oui sa fonctionne tres bien avec ./prgm
creadiff
Messages postés
445
Date d'inscription
samedi 3 avril 2010
Statut
Membre
Dernière intervention
3 novembre 2011
57
6 mai 2011 à 07:17
6 mai 2011 à 07:17
Alors c'est peut-être un problème de droits en exécution pour le programme, ou de mauvais chemin spécifié. Est-ce que PHP renvoie une erreur ?
Essaie proc_open, ça permet l'exécution de programmes de façon bien plus souple que system, et tu pourras voir la sortie du programme (ce qui est d'une grande aide quand on ne sait pas à quoi est due l'erreur).
Essaie proc_open, ça permet l'exécution de programmes de façon bien plus souple que system, et tu pourras voir la sortie du programme (ce qui est d'une grande aide quand on ne sait pas à quoi est due l'erreur).
Utilisateur anonyme
6 mai 2011 à 11:25
6 mai 2011 à 11:25
ou exec tout simplement
creadiff
Messages postés
445
Date d'inscription
samedi 3 avril 2010
Statut
Membre
Dernière intervention
3 novembre 2011
57
6 mai 2011 à 19:53
6 mai 2011 à 19:53
Dans mon message, je lui demandais d'utiliser proc_open pour permettre le débuggage : avec exec, on n'a aucune idée de ce qui se passe ni des erreurs retournées une fois que la commande est exécutée par PHP.
proc_open permet de connaître la sortie, les erreurs retournées, et de savoir par exemple si le processus est toujours en cours d'exécution quelques secondes plus tard.
proc_open permet de connaître la sortie, les erreurs retournées, et de savoir par exemple si le processus est toujours en cours d'exécution quelques secondes plus tard.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
yuri648
Messages postés
677
Date d'inscription
mardi 30 décembre 2008
Statut
Membre
Dernière intervention
20 mai 2015
7
6 mai 2011 à 12:43
6 mai 2011 à 12:43
un simple prgm marche bien avec system mais le prgrm qui lance une commande pour acceder a mysql par exemple il marche pas
moi je veux acceder a PVM voici le prgme que je veux executer
#include <pvm3.h>
int main(int p_argc, char *p_argv[]){
static char *argv[] = {
"server",
};
int *infos[1];
int info1 = pvm_start_pvmd( 1, argv,0);
int i;
for(i = 0; i < p_argc ; i++){
char *hosts[1] ;
hosts[0]= p_argv[i];
int info =pvm_addhosts( hosts, 1,infos);
}
}
moi je veux acceder a PVM voici le prgme que je veux executer
#include <pvm3.h>
int main(int p_argc, char *p_argv[]){
static char *argv[] = {
"server",
};
int *infos[1];
int info1 = pvm_start_pvmd( 1, argv,0);
int i;
for(i = 0; i < p_argc ; i++){
char *hosts[1] ;
hosts[0]= p_argv[i];
int info =pvm_addhosts( hosts, 1,infos);
}
}