Aide et conseils concernant AutoIt et ses outils.
camil
Niveau 4
Messages : 63 Enregistré le : mar. 13 oct. 2009 21:41
Status :
Hors ligne
#1
Message
par camil » dim. 15 avr. 2018 16:59
Bonjour,
Dans ma base de registre j'ai créé plusieurs clés pour tester RegEnumKey :
HKEY_LOCAL_MACHINE\System\0test\entree1\sortie1
HKEY_LOCAL_MACHINE\System\0test\entree2\sortie2
Quand je lance le Script il me sort :
1er MsgBox :
entree1 / sortie1
2eme MsgBox :
entree2 / sortie2
Je ne suis pas très fier de se Script, je souhaiterai les résultats sur un seul MsgBox.
For $i = 1 To 10 $sSubKey1 = RegEnumKey ( "HKEY_LOCAL_MACHINE\System\0test\" , $i ) For $n = 1 To 1 $sSubKey2 = RegEnumKey ( "HKEY_LOCAL_MACHINE\System\0test\" & $sSubKey1 & "\" , $n ) MsgBox ( $MB_SYSTEMMODAL , "SubKey #" & $i & " : " , $sSubKey1 & " \ " & $sSubKey2 ) Next If $sSubKey1 = "" Then ExitLoop Next
Merci pour l'aide,
Modifié en dernier par
camil le mar. 17 avr. 2018 18:20, modifié 3 fois.
orax
Modérateur
Messages : 1479 Enregistré le : lun. 23 mars 2009 04:50
Localisation : ::1
Status :
Hors ligne
#2
Message
par orax » dim. 15 avr. 2018 17:50
Il n'y a qu'une seule clé dans
entree2
donc c'est l'instance 1.
Code : Tout sélectionner
$sSubKey2 = RegEnumKey("HKEY_LOCAL_MACHINE\System\0test\" & $sSubKey1 & "\", 1)
De petits détails peuvent faire toute la différence. — Quand la boule de neige commence à rouler… poussez-la. (Columbo)
camil
Niveau 4
Messages : 63 Enregistré le : mar. 13 oct. 2009 21:41
Status :
Hors ligne
#3
Message
par camil » dim. 15 avr. 2018 18:28
Merci orax, je viens de modifier ça fait moins de boucle.
Mais pour afficher dans la même MsgBox mes instances, je ne sais pas comment faire ?
Modifié en dernier par
camil le dim. 15 avr. 2018 20:28, modifié 1 fois.
walkson
Modérateur
Messages : 1037 Enregistré le : ven. 12 août 2011 19:49
Localisation : Hurepoix
Status :
Hors ligne
#4
Message
par walkson » dim. 15 avr. 2018 19:09
Code : Tout sélectionner
Local $cumul = ""
For ...
$cumul &= "SubKey #" & $i & " : ", $sSubKey1 & " \ " & $sSubKey2 & @CRLF
Next
Msgbox(0,"",$cumul)
Pourquoi 2 fois
If $sSubKey1 = "" Then ExitLoop
??
Cordialement,
Walkson
"Horas non numero nisi serenas " Le canon de midi
(Je ne compte que les heures heureuses)
camil
Niveau 4
Messages : 63 Enregistré le : mar. 13 oct. 2009 21:41
Status :
Hors ligne
#5
Message
par camil » dim. 15 avr. 2018 20:50
C'est un oublie, merci pour la ligne de code c'est impeccable.
Code : Tout sélectionner
#include <MsgBoxConstants.au3>
Local $cumul = ""
For $i = 1 To 10
$sSubKey1 = RegEnumKey("HKEY_LOCAL_MACHINE\System\0test\", $i)
If $sSubKey1 = "" Then ExitLoop
$sSubKey2 = RegEnumKey("HKEY_LOCAL_MACHINE\System\0test\" & $sSubKey1 & "\", 1 )
$cumul &= "SubKey #" & $i & " : " & $sSubKey1 & " \ " & $sSubKey2 & @CRLF _
& "------------------------------------------" & @CRLF
Next
Msgbox(0,"",$cumul)
Tlem
Site Admin
Messages : 11784 Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status :
Hors ligne
#6
Message
par Tlem » dim. 15 avr. 2018 22:13
@Camil
L'utilisation de la balise BBCode [ code2][ /code2] n'est prévue que pour une seule ligne de code , pas pour une série de lignes.
Merci de faire un peu plus attention la prochaine fois.