Batch

Signaler
Messages postés
81
Date d'inscription
vendredi 18 juillet 2003
Statut
Membre
Dernière intervention
10 septembre 2003
-
Messages postés
7
Date d'inscription
mercredi 25 juin 2003
Statut
Membre
Dernière intervention
11 septembre 2003
-
On m'a dit:
"Ton programme il est bien (je veux cela fait deux mois que je suis dessus) mais on a pas du etre tres clair parce qu'en fait on voudrait qu'il fonctionne en ligne de commande qu'on puisse l'integrer dans un batch"

Donc maintenant je me galere bien, je sais pas du tout comment faire ca.
En gros l'utilisateur doit taper le nom de mon prog (.exe)
puis le fichier a traiter puis toute une serie d'option defini comme suit:
-b g -h j -k l

les lettre avec "-" determinant l'option et les lettres sans determinant le choix de cette option (en ou en bas par exemple)

Le truc c'est que je pensais mettre toute la ligne de commande dans un buffer pour la traiter et faire des test pour savoir dans quel cas je suis mais ca ne marche pas.

Est ce que quelqu'un pourrait m'expliquer quel methode je dois mettre en oeuvre pour avoir un prg qui fonctionne en ligne de commande.

MERkI

6 réponses

Messages postés
21041
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
30
Sur Win32 tu analyses le 3eme param de WinMain, c'est la ligne de commande.
BruNews, ciao...
Messages postés
199
Date d'inscription
lundi 22 juillet 2002
Statut
Membre
Dernière intervention
14 juin 2006

Slt

Tu as essayé d'utiliser argc et argv pour récupérer tes options et ton nom de fichier ?

Trinita,
Messages postés
81
Date d'inscription
vendredi 18 juillet 2003
Statut
Membre
Dernière intervention
10 septembre 2003

Je me dirige vers ca mais je ne sait pas trop comment faire.
Messages postés
199
Date d'inscription
lundi 22 juillet 2002
Statut
Membre
Dernière intervention
14 juin 2006

Bein si tu veux je peux essayer de te donner un pti coup de main

@+

Trinita,
Messages postés
81
Date d'inscription
vendredi 18 juillet 2003
Statut
Membre
Dernière intervention
10 septembre 2003

Avec plaisir, mais j'ai l'impression que je dois retaper tout mon prog pour que cela marche car il etait quand meme oriente pour l'interface graphique a mort alors Brunews pourrais tu m'en dire un peu plus sur ta solution, s'il te plait?

meme si pour l'instant je bosse a restructuer mon programme.
Messages postés
7
Date d'inscription
mercredi 25 juin 2003
Statut
Membre
Dernière intervention
11 septembre 2003

Bonjour,
Voici un exemple qui permet de lire chaque parametre et de les traiter :

int main(int argc, char *argv[]){
int i;
for (i = 0; i < argc; i++){
if(strcmp("-p", argv[i]!=0){ /*traitement*/}
else if( strcmp("-x", argv[i]!=0){ /*traitement*/}
...
}
return 0;
}

A noter : argc est le nombre d'argument entré (remarque : l'adresse et le nom de l'exe sont toujours stockés dans le 1er argument, donc est toujours argc>0)
argv est un tableau contenant tout les parametres saisies:
exemple de saisie:
C:\essai1\projet.exe -p zut -toto
argc = 4
argv[0]=="C:\essai1\projet.exe"
argv[1]=="-p"
argv[2]=="zut"
argv[3]=="-toto"

Voila, j'espere que cette technique est plus claire pour toi !!!!!