[R] Tableau et RegWrite

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
Saachaa
Niveau 5
Niveau 5
Messages : 142
Enregistré le : dim. 11 mars 2012 23:29
Status : Hors ligne

[R] Tableau et RegWrite

#1

Message par Saachaa »

Bonjour à tous ça faisait longtemps :)

Incompréhension, pourquoi cela ne fonctionne pas ?

Code : Tout sélectionner

Dim $opti_reg[2] = _
        ['"HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management", "IoPageLockLimit", "REG_DWORD", "003F0000"', _ 
        '"HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem", "ContigFileAllocSize", "REG_DWORD", "512"']


    For $a = 0 To UBound ($opti_reg) -1
        $regwrite = RegWrite($opti_reg[$a])
        If $regwrite = 0 Then MsgBox(64, $regwrite, "RegWrite(" & $opti_reg[$a] & ")")
    Next
 
Dans la messagebox apparaît ce que je souhaite... alors pourquoi cela ne passe pas ? Je n'ai que des erreurs...

Merci à vous !
Modifié en dernier par Saachaa le dim. 15 juil. 2012 12:03, modifié 1 fois.
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11830
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Tableau et RegWrite

#2

Message par Tlem »

Par ce que vous ne respectez pas le format du RegWrite().
Regardez comment doit être paramétré la commande : http://www.autoitscript.fr/autoit3/docs ... gWrite.htm

Il y a 4 paramètres et non un seul. :roll:
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é".
cortx
Niveau 5
Niveau 5
Messages : 115
Enregistré le : dim. 04 mai 2008 16:10
Status : Hors ligne

Re: [..] Tableau et RegWrite

#3

Message par cortx »

Le fait de passer 1 seul paramètre qui en contient 4, ca ne fonctionne pas.
Ton paramètre 1 est égal à "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management", "IoPageLockLimit", "REG_DWORD", "003F0000" et tes paramètres 2,3,4 à rien.
Ca marche bien dans la MSGBOX car elle accepte de t'afficher 1 paramètre avec les virgules que toi tu interprete comme la séparation du regwrite mais il n'en est rien.

Par contre, peux tu expliquer ce que tu cherche à faire ?
Pourquoi passer dans un tableau alors que tu as déjà toutes les valeurs pour le regwrite, il te suffirait juste de l'écrire en dur.
Ca m'interesse car j'ai aussi du toucher à des valeur registre et le seul moyen que j'ai trouvé c'est de tout mettre à la main en dur.
Saachaa
Niveau 5
Niveau 5
Messages : 142
Enregistré le : dim. 11 mars 2012 23:29
Status : Hors ligne

Re: [..] Tableau et RegWrite

#4

Message par Saachaa »

Bonjour,

Ok pour les paramètres, mais je cherche aussi à simplifier l'écriture... d'où le tableau !

Comment puis-je faire ?
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11830
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Tableau et RegWrite

#5

Message par Tlem »

Code : Tout sélectionner

Dim $opti_reg[2][4] = _
        [["HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management", "IoPageLockLimit", "REG_DWORD", "003F0000"], _
        ["HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem", "ContigFileAllocSize", "REG_DWORD", "512"]]

    For $a = 0 To UBound ($opti_reg) -1
        $regwrite = RegWrite($opti_reg[$a])
        If $regwrite = 0 Then MsgBox(64, $regwrite, "RegWrite(" & $opti_reg[$a][0] & ", " & $opti_reg[$a][1] & ", " & $opti_reg[$a][2] & ", " & $opti_reg[$a][3] & ")")
    Next
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é".
cortx
Niveau 5
Niveau 5
Messages : 115
Enregistré le : dim. 04 mai 2008 16:10
Status : Hors ligne

Re: [..] Tableau et RegWrite

#6

Message par cortx »

Tu dois pouvoir utiliser ton tableau à condition de fragmenter tes lignes en utilisant StringSplit par exemple.
http://www.autoitscript.com/autoit3/doc ... gSplit.htm

Code : Tout sélectionner

#include <Array.au3>
$valeur_registre = StringSplit("'HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management' , 'test1', 'REG_DWORD', '003F0000'", ",")
_ArrayDisplay($$valeur_registre, "verification")
 
****
Edit:
Tlem, c'est de base dans la création de tableau qu'il prend les virgule comme séparateur ?
Si j'ai des ; ou des - qui me serve de séparateur, je peux utiliser la même méthode ?
Saachaa
Niveau 5
Niveau 5
Messages : 142
Enregistré le : dim. 11 mars 2012 23:29
Status : Hors ligne

Re: [..] Tableau et RegWrite

#7

Message par Saachaa »

Merci Thierry au Top !!
Répondre