[C++] Passer nomfichier en arguments...

etienne -  
 Jon301 -
Bonjour tout le monde.
Bon c'est la premiere fois que je post et on dirait qui a beaucoup de monde sur le forum alors je risque d'avoir une reponse.
J'ai pas essayer de chercher parce que je savais pas comment formuler la recherche...

Ce que je cherche c'est savoir comment on peut passer en arguments le path_d_un_fichier a la fonction main.
Situation : drag and drop d'un fichier sur le programme.
: open with->the_programme

J'ai deja vu des arguments de la fonction main style char *argv, int argv mais j'ai jamais su a quoi y servait. Est-ce que en drag and droppant un fichier sur le programme, windows va passer en arguments a la fonction main le path_du_fichier ?

Enfin si c'est toujours pas claire ben j'essayerais de clarifier un peu.
Marci.
A voir également:

2 réponses

jon301
 
Salut,
Tout d'abord qques explications en ce qui concerne: int main(int argc, char** argv)

int argc = nombre de paramètres passés au main
char **argv = tableau des paramètres passés au main (contient des chaines de caractères)

ces paramètres sont passés au programme par la ligne de commande
donc imaginons que ton programme s'appelle toto
si tu tapes la commande : toto arg1 arg2 arg3
alors argv[0] contient "toto"
argv[1] contient "arg1"
argv[2] ... et ainsi de suite
avec argc = 4 (toto compte pour un parametre aussi -_- fo faire gaffe a ca)


enfin bref, ca ca marche par la ligne de commande donc tu peux passer un nom de fichier de la sorte, puis faire tes traitements avec des flux du genre ofstream et ifstream

ensuite jpeux pas te dire si ca fonctionne avec le drag and drop
mais ca m'étonnerait etant donné que le main prend des chaines de caractères en paramètres...
et le drag and drop perso jsais pas ce que ca passe comme type de données

A+

Jon
38
Jon301
 
et puis c un peu crade qd mm de faire un drag n drop sur un executable
jte conseille tout simplement d'inviter l'utilisateur a saisir un nom de fichier par le flux d'entrée
mais ca t'empeche pas de continuer tes recherches :)

A+

Jon
0