Programme externe avec paramêtre

hardgamer666 Messages postés 8 Date d'inscription mercredi 21 février 2007 Statut Membre Dernière intervention 22 juin 2007 - 27 mai 2007 à 17:05
The_Guardian Messages postés 317 Date d'inscription vendredi 25 mai 2007 Statut Membre Dernière intervention 19 octobre 2007 - 27 mai 2007 à 18:42
Salut tout le monde,

Voilà, j'ai un petit problème, j'aimeraislancé une application depuis un programme consol écrit en C++. Le problème c'est que je ne connais que la commande system("").
Mais cette fonction ne permet pas l'utilisation de paramêtres. J'ai bien trouvé certaine fonction, mais les paramêtre que je dois mettre son du type  int et le paramêtres utilisé par la fonction sont du type char.

Donc ma question est comment pouvoir demander à mon programme de lancer un programme externe dont la ligne serrait comme celle ci:

c:\un_dossier\un_fichier.exe -int

Donc, si vous avez une réponce, envoyz.

Merci de vos future réponces ;)

Fred

3 réponses

The_Guardian Messages postés 317 Date d'inscription vendredi 25 mai 2007 Statut Membre Dernière intervention 19 octobre 2007
27 mai 2007 à 18:09
Salut,

La fonction system qui se trouve dans stdlib.h prend en parametres un char *
cf http://www.hmug.org/man/3/system.php
qui est exactement ce que tu aurais mis en parametres au shell donc tu as juste a mettre ta ligne et ca va marcher.


=
0
hardgamer666 Messages postés 8 Date d'inscription mercredi 21 février 2007 Statut Membre Dernière intervention 22 juin 2007
27 mai 2007 à 18:30
Je vais essayer ça, mais en faite, dans mon programme, je demande à l'utilisateur d'entrer des informations ici des int ensuite, le programme lance un autre programme avec des argument.

En faite, pour être précis, je demande à l'utilisateur un temps en heure minute seconde, qeu je transforme en seconde pour l'envoyer à la comme shutdown.

Utilisation de la commande dans le programme:

shutdonw -r - t xx ou XX est le temps défini par l'utilisateur en seconde.

donc, ma ligne de code est la suivante:

system("c:\windows\system32\shutdown.exe -r -t ") mais après je ne sais pas comment mettre le temps dans la commande :s
Si tu as une idée ou quelqu'un d'autre, ce serrait sympas. En sachant que les valeur temps sont mise en type int.

Merci
0
The_Guardian Messages postés 317 Date d'inscription vendredi 25 mai 2007 Statut Membre Dernière intervention 19 octobre 2007
27 mai 2007 à 18:42
RE

Ben tu peux faire ca:

char * commande;
commande = (char *)malloc((MAX_COMMAND_SIZE+1)*sizeof(char));
strcpy(command, "shutdown -r -t ");
strcat(command, itoa(time));
 system(command);
free(command);

=
0