Page 1 sur 1
[R] Modification ini selion checkbox
Posté : mar. 23 févr. 2010 17:10
par damda58
Bonjour, à tous je suis en train de réaliser un script d'installation automatique et de maintenance pour ma boite mais je rencontre un petit soucis au niveau des checkbox.
lorsque je sélectionne par exemple firefox ou vlc ou bien winrar seul l'installation fonctionne. mais lorsque je sélectionne par exemple les 3 en même temps puis clique sur installé sa ne m'en installe qu'un voir deux mais pas les trois.
Le contenu de mon log.ini est du style
firefox=0
winrar=1
...
quand la valeur est a 1 alors le script install. mais le ini n'est pas modifié correctement lorsque plusieurs checkbox sont sélectionnées et les valeurs précédement écrite lors d'une exécution du script ne sont pas remise a 0.
Je ne trouve pas où sa coince si quelqu'un pouvais m'aider se serait sympathique
J'ai rechercher sur le forum et vue des cas similaires mais je n'ai pas réussi à trouver.
Mon code si cela peut aider
Merci d'avance
Re: modification ini selion checkbox
Posté : mar. 23 févr. 2010 17:12
par timmalos
Merci de prendre connaissance des règles du forum et d'editer votre message en consequence.
Re: [..] Modification ini selion checkbox
Posté : mar. 23 févr. 2010 17:19
par damda58
Désolé pour le règlement.
C'est chose faites
Re: [..] Modification ini selion checkbox
Posté : mar. 23 févr. 2010 17:35
par Narmeke
Le code est un petit peu long
Je vous conseille de poster le script complet en pièce jointe.
Et ensuite nous pourrons "travailler" dans de bonnes conditions

Re: [..] Modification ini selion checkbox
Posté : mar. 23 févr. 2010 18:42
par damda58
merci pour la réponse rapide
oui effectivement 400 lignes le code ^^' je l'est upload sur le premier post
Re: [..] Modification ini selion checkbox
Posté : mar. 23 févr. 2010 19:30
par timmalos
Ouch le code est dur a avaler.
Premierement votre fonction installer()
Vous utilisez des IF imbriqués, donc reflechissez 30 s.
Si Vous avez coché _IEVista que se passe t'il? Il ne regarde pas le reste!
Le reste c'est du grand n'importe quoi, vous testez recursivement des
Code : Tout sélectionner
If $check2 = "1" then
CHECK1()
Else
If $check3 = "1" then
CHECK1()
Else
If $check4 = "1" then
CHECK1()
Else
Alors que vous retestez dans chaque Check si c'est coché ou non !
Essayez de changer le fichier INI à chaque fois que l'utilisateur appui sur une checkbox, et plusieurs exemples sont disponibles sur le forum. Cherchez installation dans la recherche du forum, les gens veulent faire comme vous, un installateur de plusieurs logiciels.
Et de grâce arretez ces SI imbriqués qui ne meneront a rien. La programmation, vous devez comprendre ce que vous faites. Regardez votre algorithme, vous dites: Si ya ca, alors je fais ca, POINT. SINON, je fais ca si ya ca POINT [...]Sinon je fais ca si ya ca POINT FINAL Resultat, Au premier IF qui repond OUI, vous arretez les tests, ca ne peut PAS marcher.
Re: [..] Modification ini selion checkbox
Posté : mar. 23 févr. 2010 19:54
par damda58
effectivement je crois que je vais tout réécrire et prendre mon temps
merci pour les conseils je vais voir si j'y arrive
Re: [..] Modification ini selion checkbox
Posté : mar. 23 févr. 2010 20:40
par GELDROC
bonjours je te mais un vieux script qui n'est pas sur les forum . ils te sera surement utile .
il fonctionne très bien mais ils est très mal developer
.
Re: [..] Modification ini selion checkbox
Posté : mar. 23 févr. 2010 23:02
par damda58
Merci beaucoup pour ton aide

je vais regardé sa
Edit:
Juste pour vous dire merci j'ai réussi et avec un code un peu plus propre je pense vois fichiers joint
Re: [R] Modification ini selion checkbox
Posté : mer. 24 févr. 2010 01:11
par Tlem
Lorsque vous codez en AutoIt, utilisez
Scite4AutoIt, et faite CTRL + F5 pour vérifier le code.
En l'occurrence, ici il y a erreurs ...
Re: [R] Modification ini selion checkbox
Posté : mer. 24 févr. 2010 01:21
par damda58
j'ai avancé un peu plus loin corrigé l'error de boucle et ajouter un deuxieme gui pour entrer un serial d'antivirus pour pouvoir le réinjecter une fois demandé cependant je peine avec les variable global ou local en faisant ctrl+f5 il me dit:
Code : Tout sélectionner
T:\sauvegarde\SNI.au3(228,38) : WARNING: $CLE: possibly used before declaration.
Global $Cle_DrWeb2= (GUICtrlRead($CLE)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
T:\sauvegarde\SNI.au3(229,32) : WARNING: $NOM: possibly used before declaration.
Global $nom2= (GUICtrlRead($NOM)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
T:\sauvegarde\SNI.au3(230,36) : WARNING: $VILLE: possibly used before declaration.
Global $ville2= (GUICtrlRead($VILLE)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
T:\sauvegarde\SNI.au3(81,66) : WARNING: $CLE: declared global in function only. Prefer top of file.
Global $CLE = GUICtrlCreateInput("Clé Liscence", 10, 15, 369, 21),
et je ne sais comment le résoudre
mon script
Re: [R] Modification ini selion checkbox
Posté : mer. 24 févr. 2010 01:32
par Tlem
Ce type de message d'erreur est lié à l'utilisation de variable non déclarée ou déclarée incorrectement.
Pour résoudre votre problème, déclarez vos variables en début de script.
Re: [R] Modification ini selion checkbox
Posté : mer. 24 févr. 2010 01:37
par damda58
se sont des variables du style:
Code : Tout sélectionner
Global $CLE = GUICtrlCreateInput("Clé Liscence", 10, 15, 369, 21)
Et je ne sais pas comment les déclarer avant sachant que le input fait parti d'une gui appelé par un bouton
Re: [R] Modification ini selion checkbox
Posté : mer. 24 févr. 2010 02:07
par Tlem
Rajoutez vos déclaration en début de fichier et non ailleurs :
Code : Tout sélectionner
#RequireAdmin
#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
Global $CLE, $NOM, $VILLE
;~ ----------------------------------------------------- Interface
Opt("GUIOnEventMode", 1)
$SNI = GUICreate("Sud Nivernais Informatique - SNI", 639, 198, 192, 124)
Etc ...
Re: [R] Modification ini selion checkbox
Posté : mer. 24 févr. 2010 02:11
par damda58
Merci beaucoup je n'ai plus d'erreurs.
par contre je n'arrive pas a fermer mon deuxième GUI une fois cliqué sur OK j'ai pourtant essayé avec Winclose("titre") mais sa ne fonctionne pas, et exit ferme mes deux interfaces. J'ai mal fait quelques chose ?
Re: [R] Modification ini selion checkbox
Posté : mer. 24 févr. 2010 09:32
par Tlem
Je ne sais pas si vous avez vraiment besoin de supprimer votre deuxième GUI, car si vous devez la ré-afficher alors il faut la re-créer.
Sinon la solution c'est de la cacher :