Page 1 sur 1
[R] Tableau et RegWrite
Posté : dim. 15 juil. 2012 10:19
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 !
Re: [..] Tableau et RegWrite
Posté : dim. 15 juil. 2012 10:33
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.

Re: [..] Tableau et RegWrite
Posté : dim. 15 juil. 2012 10:48
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.
Re: [..] Tableau et RegWrite
Posté : dim. 15 juil. 2012 10:53
par Saachaa
Bonjour,
Ok pour les paramètres, mais je cherche aussi à simplifier l'écriture... d'où le tableau !
Comment puis-je faire ?
Re: [..] Tableau et RegWrite
Posté : dim. 15 juil. 2012 11:08
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
Re: [..] Tableau et RegWrite
Posté : dim. 15 juil. 2012 11:14
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 ?
Re: [..] Tableau et RegWrite
Posté : dim. 15 juil. 2012 11:16
par Saachaa
Merci Thierry au Top !!