Page 1 of 1

besoin d'aide pour script

Posted: 12 Mar 2010, 17:54
by slone
bonjour a tous

je voudrais savoir si il étais possible de créer une action avec possibilité d'avoir une lettre aléatoire a chaque fois ou un noms différent?

merci pour votre aide

Re: besoin d'aide pour script

Posted: 12 Mar 2010, 19:20
by Jmgr
Salut,

J'ai déplacé ton topic dans la section demande d'aide.

En ce qui concerne ton problème il n'y a pas de solution directe, mais on peut quand même y arriver. Voici le code d'un script qui sélectionne aléatoirement un caractère depuis un texte.

Attention, à cause d'un bug dans la fonction substr de la version 2.0.8.0. d'Actionaz ce script ne fonctionne qu'avec la version 2.0.8.1, qui n'est pas encore publiée pour l'instant.
Tu dois donc d'abord installer la version 2.0.8.1 en extrayant le contenu du fichier suivant dans ton dossier où Actionaz est installé : http://www.jmgr.info/actionaz-2.0.8.1-pre1.7z EDIT : Je remet la version pre1, comme la pre2 pose problème.

Code: Select all

<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<script>
    <settings author="jmgr" program="actionaz" program_version="2.0.8.1" script_version="1.0.1.2" os="windows" resolution_x="1440" resolution_y="900" language="fr" actions="7" interval="0" repeat="1" />
    <actions>
        <action id="10" name="Variable" variable_name="chaine" variable_type="1" variable_string="abcdef" variable_operation="0" />
        <action id="10" name="Variable" variable_name="tailleChaine" variable_type="0" variable_int="{#strlen({$chaine})}" variable_operation="0" />
        <action id="10" name="Variable" variable_name="tailleChaine" variable_type="0" variable_int="1" variable_operation="2" />
        <action id="10" name="Variable" variable_name="pos" variable_type="0" variable_int="{#rand(0,{$tailleChaine})}" variable_operation="0" />
        <action id="10" name="Variable" variable_name="pos2" variable_type="0" variable_int="{$pos}" variable_operation="0" />
        <action id="10" name="Variable" variable_name="pos2" variable_type="0" variable_int="1" variable_operation="2" />
        <action id="13" name="Boîte de dialogue" messagebox_string="{#substr({$chaine},{$pos},{$pos})}" messagebox_caption="" messagebox_type="0" messagebox_icon="0" messagebox_yes="0" messagebox_yesgoto="" messagebox_no="0" messagebox_nogoto="" messagebox_time_until_close="" />
    </actions>
    <notes />
    <labels />
</script>

Re: besoin d'aide pour script

Posted: 12 Mar 2010, 19:44
by slone
a ok, je pensais qu'on pouvais vu que la fonction existe bien pour les chiffres, mais je vais tester ton astuce,

je fais ça de suite

encore merci pour ce logiciel, il est extra :D

je le découvre petit à petit mais bien utile

Re: besoin d'aide pour script

Posted: 13 Mar 2010, 01:01
by Guy2g
Salut !
Comme tu dis, c'est un logiciel bien pratique, qui permet la réalisation très rapide d'une routine, sans perdre de temps à compiler, etc .

Mais il i avait une petite erreur de syntaxe dans l'exemple de Jmgr, qui empêchait la routine de fonctionner; voici le correctif :

Code: Select all

<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<script>
    <settings author="OldJedi" program="actionaz" program_version="2.0.8.1" script_version="1.0.1.2" os="windows" resolution_x="1280" resolution_y="1024" language="fr" actions="7" interval="0" repeat="1" />
    <actions>
        <action id="10" name="Variable" variable_name="chaine" variable_type="1" variable_string="abcdefghijkl" variable_operation="0" />
        <action id="10" name="Variable" variable_name="tailleChaine" variable_type="0" variable_int="{#strlen({$chaine})}" variable_operation="0" />
        <action id="10" name="Variable" variable_name="pos" variable_type="0" variable_int="{#rand(1,{$tailleChaine})}" variable_operation="0" />
        <action id="10" name="Variable" variable_name="pos2" variable_type="0" variable_int="{$pos}" variable_operation="0" />
        <action id="10" name="Variable" variable_name="pos2" variable_type="0" variable_int="1" variable_operation="2" />
        <action id="11" name="Condition" condition_type="3" condition_variable="{$pos2}" condition_variable2="0" condition_if="1" condition_ifgoto="2" condition_else="0" condition_elsegoto="" condition_variable_type="1" condition_content_type="0" />
        <action id="13" name="Boîte de dialogue" messagebox_string="Voici le résultat : {#substr({$chaine},{$pos2},{$pos})}" messagebox_caption="Continuer ?" messagebox_type="1" messagebox_icon="0" messagebox_yes="1" messagebox_yesgoto="2" messagebox_no="0" messagebox_nogoto="" messagebox_time_until_close="5000" />
    </actions>
    <notes />
    <labels />
</script>
Et pendant que j'y suis, voici une variante qui permet de composer des "mots" de longueur fixe avec des lettres aléatoires ...

Code: Select all

<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<script>
    <settings author="OldJedi" program="actionaz" program_version="2.0.8.1" script_version="1.0.1.2" os="windows" resolution_x="1280" resolution_y="1024" language="fr" actions="14" interval="0" repeat="1" />
    <actions>
        <action id="12" name="Demande de texte" text_input_question="Combien de lettres dans le mot ?" text_input_variable="NbLettres" text_input_type="0" text_input_default="1" />
        <action id="10" name="Variable" variable_name="chaine" variable_type="1" variable_string="abcdefghijklmnopqrstuvwxyz" variable_operation="0" />
        <action id="10" name="Variable" variable_name="tailleChaine" variable_type="0" variable_int="{#strlen({$chaine})}" variable_operation="0" />
        <action id="14" name="Aller à" goto_line="11" />
        <action id="10" name="Variable" variable_name="pos" variable_type="0" variable_int="{#rand(1,{$tailleChaine})}" variable_operation="0" />
        <action id="10" name="Variable" variable_name="pos2" variable_type="0" variable_int="{$pos}" variable_operation="0" />
        <action id="10" name="Variable" variable_name="pos2" variable_type="0" variable_int="1" variable_operation="2" />
        <action id="11" name="Condition" condition_type="3" condition_variable="{$pos2}" condition_variable2="0" condition_if="1" condition_ifgoto="5" condition_else="0" condition_elsegoto="" condition_variable_type="1" condition_content_type="0" />
        <action id="10" name="Variable" variable_name="Mot" variable_type="1" variable_string="{#substr({$chaine},{$pos2},{$pos})}" variable_operation="1" />
        <action id="11" name="Condition" condition_type="3" condition_variable="{#strlen({$Mot})}" condition_variable2="{$NbLettres}" condition_if="1" condition_ifgoto="4" condition_else="0" condition_elsegoto="" condition_variable_type="1" condition_content_type="0" />
        <action id="13" name="Boîte de dialogue" messagebox_string="Voici le résultat : {$Mot}" messagebox_caption="Continuer ?" messagebox_type="1" messagebox_icon="0" messagebox_yes="0" messagebox_yesgoto="" messagebox_no="1" messagebox_nogoto="13" messagebox_time_until_close="5000" />
        <action id="10" name="Variable" variable_name="Mot" variable_type="1" variable_string="" variable_operation="0" />
        <action id="14" name="Aller à" goto_line="4" />
        <action id="13" name="Boîte de dialogue" messagebox_string="Veux-tu recommencer ?" messagebox_caption="Voili-Voila !" messagebox_type="1" messagebox_icon="3" messagebox_yes="1" messagebox_yesgoto="0" messagebox_no="0" messagebox_nogoto="" messagebox_time_until_close="5000" />
    </actions>
    <notes />
    <labels />
</script>
Enjoy ! :D

Re: besoin d'aide pour script

Posted: 13 Mar 2010, 08:58
by Jmgr
Hm, as-tu la version pre2 de la 2.0.8.1 ?
Car en effet dans la pre1 et dans la 2.0.8.0 il y a un bug qui empêche mon exemple de fonctionner.

Re: besoin d'aide pour script

Posted: 14 Mar 2010, 18:43
by Guy2g
Oui en effet, c'est la pre-1 du 22/2. Je vais donc me parachuter la dernière.

Mais ne te prends pas la tête ! il y avait effectivement une erreur à l'instruction 6, où tu écris :
{#substr({$chaine},{$pos},{$pos})} => donc 2 fois $pos, au lieu de
{#substr({$chaine},{$pos2},{$pos})}
et d'autre part, tu ne fais pas de test sur une éventuelle valeur négative de $pos2, (= $pos - 1), ce qui peut conduire l'application à bugger (et ce fut le cas). L'erreur est humaine :wink:

Re: besoin d'aide pour script

Posted: 14 Mar 2010, 18:59
by Jmgr
Ah, oui en effet. Bon, au temps pour moi :p

Re: besoin d'aide pour script

Posted: 14 Mar 2010, 19:30
by Guy2g
OUH-LA OUH-LA Ouh-la-la-la-la :!:

Je viens d'installer la pré-2 de la 2081, aïe-aïe-aïe ! :
Certes, ton exemple fonctionne bien avec cette version, mais tous les précédents programmes vont être incompatibles ...
Normalement, les paramètres de la fonction Substr doivent indiquer respectivement la position de départ et celle d'arrivée, et si ces paramètres sont identiques, on ne soutire donc aucun caractère, c'est normal.

Je retourne donc d'urgence à la précédente version 2081c, faute de quoi mes programmes ne fonctionneront plus.
Et je te suggère d'en faire autant, car cette nouvelle version n'est pas logique ... :wink:

Re: besoin d'aide pour script

Posted: 14 Mar 2010, 20:01
by Jmgr
Je vois, en effet ça peut poser problème...
D'où l'intérêt de proposer des versions "pre-release" :p

Re: besoin d'aide pour script

Posted: 16 Mar 2010, 18:11
by slone
Merci bcp pour vos réponse :)

mais je début sur actionaz, je ne comprend pas tout :?

Re: besoin d'aide pour script

Posted: 16 Mar 2010, 22:59
by Guy2g
Slone a écrit :
mais je début sur actionaz, je ne comprend pas tout
T'inquiètes, c'est normal si tu débutes ! :wink:
=> une version pre-release, est une version à l'état brut, non encore testée par des tiers.

Dans l'immédiat, si tu veux utiliser les exemples (et je suppose que tu as déjà installé Actionas 2080), télécharge la nouvelle version "pre-release" 2081c (celle que j'utilise) => http://www.jmgr.info/

D'abord, dans ton répertoire ...\Actionaz2, tu ouvres un sous-répertoire "Actionaz2.Bak" dans lequel tu tranfères le fichier pour le sauvegarder, au cas où ...

Tu décompresses le fichier actionaz-2.0.8.1-pre1.7z que tu viens de télécharger dans ton répertoire Actionaz, ça t'ouvre un sous-répertoire baptisé "actionaz-2.0.8.1-pre" dans lequel il y a un EXE du nom de actionaz2c.exe . Tu copies ce fichier vers le répertoire (parent) Actionaz2. Puis tu le rebaptises en actionaz2.exe (supprimer la lettre "c"). Voilà, c'est opérationnel.

Maintenant, si tu veux utiliser mes exemples, lance actionaz, fais un copier-coller d'un des exemples ci-avant, et lance-le.
Tu verras, ça marche !

:D

Re: besoin d'aide pour script

Posted: 18 Mar 2010, 17:25
by Jmgr
Plus besoin de renommer actionaz2c.exe en actionaz2.exe, j'ai corrigé l'archive :)

Re: besoin d'aide pour script

Posted: 18 Mar 2010, 20:38
by slone
:D merci bcp pour cette explication et procédure , le top :)

cela fais une semaine que je suis dessus, je commence a me débrouiller un peu.