OVH Cloud OVH Cloud

passage de parametres a un programme

2 réponses
Avatar
guilloud cyril
Bonjour à tous,

J'aimerai passer en argument à un script (python en l'occurence, mais je
pense que c'est plus une qestion windows) le nom d'un fichier dont je
glisse l'icone sur celle du script, le tout dans une fenetre du bureau
windows.

En gros, je voudrais simuler une ligne de commande du style :

<< my_script.py file_name >> avec un glisser/deposer.

Je ne sait pas trop comment m'y prendre, est-ce que qqun aurai une idée.

Merci d'avance,

Cyril.

2 réponses

Avatar
Christian ASTOR
guilloud cyril wrote:

J'aimerai passer en argument à un script (python en l'occurence, mais je
pense que c'est plus une qestion windows) le nom d'un fichier dont je
glisse l'icone sur celle du script, le tout dans une fenetre du bureau
windows.



Il n'y a rien à faire.
C'est au script de récupérer l'argument.
Si par ex. on droppe un fichier sur un .bat contenant "Notepad %1", cela
lancera Notepad avec le fichier droppé.
Avatar
guilloud cyril
Christian ASTOR wrote:
guilloud cyril wrote:

J'aimerai passer en argument à un script (python en l'occurence, mais
je pense que c'est plus une qestion windows) le nom d'un fichier dont
je glisse l'icone sur celle du script, le tout dans une fenetre du
bureau windows.



C'est au script de récupérer l'argument.
Si par ex. on droppe un fichier sur un .bat contenant "Notepad %1", cela
lancera Notepad avec le fichier droppé.



merci pour ta réponse,
mais ... :)

alors ok pour un fichier .bat qui lance notepad ca marche bien,

par contre, si je glisse une icone de fichier sur une _icone de script_
python, ca ne marche pas, les icones sont juste déplacées :(

si je fait pareil avec un _raccourci vers le script_, le comportement
n'est pas tout à fait le meme : les icones ne sont pas déplacées, mais
il ne se passe rien...

Y a t il qqchose à dire à windows du style "ce type de fichier (.py) est
(comme .bat) une commande executable qui accepte un drag and drop"? et
si oui, comment ?

si je double clique sur l'icone du script ou du raccourci, celui ci est
bien lancé.
A noter que mon script traite correctement les arguments quand je le
lance en ligne de commande ou si je met des arguments dans la ligne
"cible" du racourci.

j'ai donc essayé en créant un fichier .bat contenant :
<< monscript.py %1 >> cela récupere bien le nom du fichier droppé sur
l'icone du .bat, mais il me dit que monscript.py n'est pas une commande
valide ... est-ce que la variable d'environement PATH est différente
entre l'interface graphique et la ligne de commande ?

de plus ce n'est pas tres pratique ni tres élegant je trouve... mais bon
si c'est le plus simple, je ferai avec :)

Merci bcp.

Cyril.