Rubrique précédente: RegSetValue : Associer la clé de registre à une chaîne de texteRubrique suivante: SetMode64 : accès au registre Windows 64 bits et au système de fichiers


RegSetVariable : Stocker une variable dans une clé de registre

(Applicable à Windows)

La fonction RegSetVariable stocke une variable dans la clé du registre spécifiée.

Format de la fonction :

RegSetVariable(hKey as Integer, name as String, value as Integer) as Boolean
RegSetVariable(hKey as Integer, name as String,	value as String) as Boolean
RegSetVariable(hkey as integer, name as string, buffer as void, bufsize as integer) as integer.
RegSetVariable(hkey as integer, name as string, buffer as void, bufsize as integer, type as integer) as integer.
hKey

Identifie une clé ouverte ou une clé prédéfinie. Le paramètre hKey peut avoir l'une des valeurs prédéfinies suivantes :

HKEY_CLASSES_ROOT
HKEY_CURRENT_USER
HKEY_LOCAL_MACHINE
HKEY_USERS
name

Identifie le nom de la variable à définir.

value

Identifie la valeur de chaîne ou de nombre entier à définir dans la variable.

mémoire tampon

Tampon contenant la valeur à définir dans la variable.

bufsize

Taille du tampon en caractères si le tampon est de type chaîne ou tableau de caractères. Dans le cas contraire, elle est exprimée en octets.

type

Type de l'entrée du registre.

Le type d'entrée du registre est renvoyé en notation Microsoft :

REG_NONE

Valeur 0

REG_SZ

Valeur 1

REG_EXPAND_SZ

Valeur 2

REG_BINARY

Valeur 3

REG_DWORD

Valeur 4

REG_DWORD_LITTLE_ENDIAN

Valeur 5

REG_DWORD_BIG_ENDIAN

Valeur 6

REG_LINK

Valeur 7

REG_MULTI_SZ

Valeur 8

En cas de réussite, la fonction renvoie TRUE (Vrai), sinon elle renvoie FALSE (Faux).

Exemple :

Avant de débuter l'exemple suivant, exécutez l'exemple RegOpenKey.

Dim value as string
Dim hkey1 as integer
Dim name, str, dummy as string
Dim i, i1, rtr, int as integer
Dim bBuf[100] as Byte
Dim cBuf[100] as char

ClrScr()

hkey1 = RegOpenKey(HKEY_LOCAL_MACHINE, "SOFTWARE\CA\pour test uniquement")
if hkey1 = 0 then
	Print("Echec de RegOpenKey.")
	quitter
endif

rtr = RegQueryVariable(hkey1, "var_2", str, int)
Print (Str(rtr) + ": var_2 = " + str)
int = 100
str = ""
rtr = RegQueryVariable(hkey1, "var_2", dummy, int, str)
Print (Str(rtr) + ": var_2(" + Str(int) + ") = " + str)
int = 100
str = ""
rtr = RegQueryVariable(hkey1, "var_2", dummy, int, cBuf)
for i1 = 0 to int - 1
	str = str + cBuf[i1]
next i1
Print (Str(rtr) + ": var_2(" + Str(int) + ") = " + str)
int = 100
str = "| "
rtr = RegQueryVariable(hkey1, "var_2", dummy, int, bBuf)
for i1 = 0 to int - 1
	str = str + Str(bBuf[i1]) + " | "
next i1
Print (Str(rtr) + ": var_2(" + Str(int) + ") = " + str)

RegCloseKey(hkey1)