[R] Script qui retourne une valeur
Règles du forum
- Merci de consulter la section "Règles du forum" et plus particulièrement "Règles et Mentions Légales du site autoitscript.fr" avant d'écrire un message.
[R] Script qui retourne une valeur
Bonjour a tous,
une petite question certainement un peu bête mais : comment faire pour qu'un script retourne une valeur.?.....
pouvez vous me montrer un exemple de retour de valeur...et d'appel du script en run.pour recevoir la valeur.?...
je ne parviens pas a trouver un exemple sur le site.
Merci par avance de vos réponses.
une petite question certainement un peu bête mais : comment faire pour qu'un script retourne une valeur.?.....
pouvez vous me montrer un exemple de retour de valeur...et d'appel du script en run.pour recevoir la valeur.?...
je ne parviens pas a trouver un exemple sur le site.
Merci par avance de vos réponses.
Modifié en dernier par Tlem le lun. 19 oct. 2009 22:16, modifié 2 fois.
Raison : Ajout de la balise [..] dans le titre.
Raison : Ajout de la balise [..] dans le titre.
- Tlem
- Site Admin
- Messages : 11784
- Enregistré le : ven. 20 juil. 2007 21:00
- Localisation : Bordeaux
- Status : Hors ligne
Re: [..] Script qui retourne une valeur
Merci de respecter les règles du forum : http://autoitscript.fr/forum/viewtopic.php?f=3&t=595
Pour la valeur de retour, c'est simplement la fonction Exit avec la valeur de retour.
En ce qui concerne les arguments, j'ai répondu récemment sur ce sujet.
Merci de faire quelques recherches.
Pour la valeur de retour, c'est simplement la fonction Exit avec la valeur de retour.
En ce qui concerne les arguments, j'ai répondu récemment sur ce sujet.
Merci de faire quelques recherches.
Thierry
Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...
Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...
Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
Re: [..] Script qui retourne une valeur
oups.....Merci Tlem..
merci de ta réponse.
Résolu.
merci de ta réponse.
Résolu.
-
- Niveau 11
- Messages : 1826
- Enregistré le : lun. 23 juil. 2007 12:31
- Localisation : Bureau
- Status : Hors ligne
Re: [..] Script qui retourne une valeur
exit ? erreur 
traduction = sorti
Tout depend de ce que tu veux faire fred
un petit exemple tout droit sorti de l'aide (regarde a Return §traduction retourner§)

traduction = sorti
Tout depend de ce que tu veux faire fred
un petit exemple tout droit sorti de l'aide (regarde a Return §traduction retourner§)
Code : Tout sélectionner
msgBox(0,"Aujourd'hui nous somme le " & today(), "Pour retourner une valeur on utilisera Return")
Exit
Func today() ;Returne la date courante sous forme dd/mm/yyyy (jour/mois/anné)
return (@MDAY & "/" & @MON & "/" & @YEAR)
EndFunc
Re: [..] Script qui retourne une valeur
slt ani,
en fait je souhaite, a partir du script1 lancer un script2....le script 2 retourne une valeur...et selon la valeur de retour, lancer un autre script.....
En fait je pose la question pour 2 cas de figure différent :
- connaitre un état..
et aussi parce que je souhaite pouvoir faire ce type de commande :
l'appli que je test ( grosse appli) a comme qui dirait, des petits probleme de mémoire....et je galère avec les sleep, et les boucle d'attente....pour 2 ou 3 fiches de tests je vais etre obligé de découper les test, sinon je vais passer plus de temps a débuguer les scripts qu'a automatiser les tests....
...
il y a 2 questions en fait :
comment récuperer une valeur de sortie d'un script..
et
comment détecter la fin d'un script pour en lancer un deuxieme...( je pose la question mais pas encore regarder a fond la doc).....
voila...une idée ani.?
en fait je souhaite, a partir du script1 lancer un script2....le script 2 retourne une valeur...et selon la valeur de retour, lancer un autre script.....
En fait je pose la question pour 2 cas de figure différent :
- connaitre un état..
et aussi parce que je souhaite pouvoir faire ce type de commande :
Code : Tout sélectionner
Run("AutoIt3.exe fiche_test\script2.au3 param1")
Run("AutoIt3.exe fiche_test\script2.au3 param2")
Run("AutoIt3.exe fiche_test\script2.au3 param3")
Run("AutoIt3.exe fiche_test\script2.au3 param4")

il y a 2 questions en fait :
comment récuperer une valeur de sortie d'un script..
et
comment détecter la fin d'un script pour en lancer un deuxieme...( je pose la question mais pas encore regarder a fond la doc).....
voila...une idée ani.?
- sylvanie
- Niveau 11
- Messages : 1556
- Enregistré le : jeu. 26 juil. 2007 21:31
- Localisation : Paris
- Status : Hors ligne
Re: [..] Script qui retourne une valeur
pour récupérer la valeur d'un script (résultat de exit ), il y a deux méthodes :
1) lancer avec runwait qui va retourner la valeur d'exit du script, mais vas attendre la fin de ce dernier avant de passer à la suite
2) lancer avec Run, qui renvoie le PID du script lancé. Pour guetter la fin de ce script, il faut tester via une boucle infinie ou de temps en temps via un adlibenanle si le PID en question existe toujours (processexist(pid)). Puis récuoérer la valeur :
sous méthodes :
2.1 - écrire dans un fichier/registrie, autre endroit du disque le résultat pour le lire après dans le script principal
2.2 - passer un pointeur au deuxième script lancer pour y mettre la vameur en question (voir partie tuto sur l'accès des vaeur en RAM direct fait par bibi (grosse pub ^^))
1) lancer avec runwait qui va retourner la valeur d'exit du script, mais vas attendre la fin de ce dernier avant de passer à la suite
2) lancer avec Run, qui renvoie le PID du script lancé. Pour guetter la fin de ce script, il faut tester via une boucle infinie ou de temps en temps via un adlibenanle si le PID en question existe toujours (processexist(pid)). Puis récuoérer la valeur :
sous méthodes :
2.1 - écrire dans un fichier/registrie, autre endroit du disque le résultat pour le lire après dans le script principal
2.2 - passer un pointeur au deuxième script lancer pour y mettre la vameur en question (voir partie tuto sur l'accès des vaeur en RAM direct fait par bibi (grosse pub ^^))
Toi qui cherche à mettre le doigt sur la solution, appuie sur F1.
Re: [..] Script qui retourne une valeur
Bonjour a tous,
Merci beaucoup Sylvanie pour ta réponse.....j'ai pas encore testé mais je pense que cela devrait être ok maintenant....
merci encore.
Merci beaucoup Sylvanie pour ta réponse.....j'ai pas encore testé mais je pense que cela devrait être ok maintenant....
merci encore.
Re: [..] Script qui retourne une valeur
Bonjour,
je suis en train de tester le runwait....
mais je rencontre un probleme, ...en esperant que quelqu'un ait rencontré la meme chose....
Script1
script 2
mon probleme : lorsque j'appele le script2 tout seul cela fonctionne bien..le chemin est selectionné et clic ok.....mais en revanche, lorsque je lance le script2 par le runwait du script1...lorsque la boite de dialogue de selection du chemin s'affiche...il y a n création de nouveau dossier.....
le comportement n'est pas le meme.....
Une personnes peut elle m'aider, ou me dire pourquoi.?...
merci par avance de vos réponses..
je suis en train de tester le runwait....
mais je rencontre un probleme, ...en esperant que quelqu'un ait rencontré la meme chose....
Script1
Code : Tout sélectionner
For $t = 2 To $CmdLine[0]
; traitementss....
runwait(script2 param)
Next
Code : Tout sélectionner
;traitements dont un clic sur une boite de dialogue de choix de chemin..
le comportement n'est pas le meme.....
Une personnes peut elle m'aider, ou me dire pourquoi.?...
merci par avance de vos réponses..
- Tlem
- Site Admin
- Messages : 11784
- Enregistré le : ven. 20 juil. 2007 21:00
- Localisation : Bordeaux
- Status : Hors ligne
Re: [..] Script qui retourne une valeur
Puisque vous maîtrisez le script 1 et le script 2, pourquoi ne mettez vous pas les instructions du script 2 dans une fonction, puis dans le script 1 vous rajoutez la ligne :
Il vous suffira alors de lancer la fonction du script2 à partir du script1.
De plus cela vous permettra d'avoir une communication entre les 2 scripts, et de retourner des valeur très facilement !
Code : Tout sélectionner
#Include <script2.au2>
De plus cela vous permettra d'avoir une communication entre les 2 scripts, et de retourner des valeur très facilement !
Thierry
Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...
Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...
Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".