SHRegWriteUSValueA, fonction (shlwapi.h)
Écrit une valeur dans une sous-clé de Registre dans une sous-arborescence spécifique à l’utilisateur (HKEY_CURRENT_USER ou HKEY_LOCAL_MACHINE).
Syntaxe
LSTATUS SHRegWriteUSValueA(
[in] HUSKEY hUSKey,
[in] LPCSTR pszValue,
[in] DWORD dwType,
[in] const void *pvData,
[in] DWORD cbData,
[in] DWORD dwFlags
);
Paramètres
[in] hUSKey
Type : HUSKEY
Handle vers une sous-clé de Registre actuellement ouverte. La sous-clé doit avoir été ouverte avec le droit d’accès KEY_SET_VALUE. Pour plus d’informations, consultez sécurité des clés de Registre et droits d’accès.
Ce handle peut être obtenu via la fonction SHRegOpenUSKey.
[in] pszValue
Type : LPCTSTR
Pointeur vers une chaîne terminée par null qui spécifie le nom de la valeur. Cette valeur est une entrée dans la sous-clé spécifiée par hUSKey . Si une valeur portant ce nom n’est pas déjà présente dans la sous-clé, elle est ajoutée.
Si ce paramètre est NULL ou une chaîne vide, la fonction définit le type et les données de la valeur par défaut de la sous-clé.
[in] dwType
Type : DWORD
Type des données à stocker dans la valeur spécifiée par pszValue. L’un des types de valeurs de Registre suivants définis dans Winnt.h et Wdm.h.
REG_NONE (0x00000000)
REG_SZ (0x00000001)
REG_EXPAND_SZ (0x00000002)
REG_BINARY (0x00000003)
REG_DWORD (0x00000004)
REG_DWORD_LITTLE_ENDIAN (0x00000004)
REG_DWORD_BIG_ENDIAN (0x00000005)
REG_LINK (0x00000006)
REG_MULTI_SZ (0x00000007)
REG_RESOURCE_LIST (0x00000008)
REG_FULL_RESOURCE_DESCRIPTOR (0x00000009)
REG_RESOURCE_REQUIREMENTS_LIST (0x0000000A)
REG_QWORD (0x0000000B)
REG_QWORD_LITTLE_ENDIAN (0x0000000B)
[in] pvData
Type : const void*
Pointeur vers les données à définir pour la valeur spécifiée par pszValue. Pour les types basés sur des chaînes, tels que REG_SZ, la chaîne doit être terminée par null. Avec le type de données REG_MULTI_SZ, la chaîne doit être arrêtée avec deux caractères Null. Une barre oblique inverse dans un chemin doit être précédée d’une autre barre oblique inverse comme caractère d’échappement. Par exemple, spécifiez « C :\mydir\myfile » pour stocker la chaîne « C :\mydir\myfile ».
[in] cbData
Type : DWORD
Taille, en octets, des données pointées par le paramètre pvData
[in] dwFlags
Type : DWORD
Indicateurs qui indiquent la sous-arborescence dans laquelle les données doivent être écrites. Une ou plusieurs des valeurs suivantes :
SHREGSET_HKCU (0x00000001)
Écrivez dans HKEY_CURRENT_USER uniquement si une valeur du nom spécifié dans pszValue n’existe pas actuellement sous la sous-clé spécifiée.
SHREGSET_FORCE_HKCU (0x00000002)
Écrire dans HKEY_CURRENT_USER. Si une valeur du nom spécifié dans pszValue existe déjà, elle est remplacée.
SHREGSET_HKLM (0x00000004)
Écrivez dans HKEY_LOCAL_MACHINE uniquement si une valeur du nom spécifié dans pszValue n’existe pas actuellement sous la sous-clé spécifiée.
SHREGSET_FORCE_HKLM (0x00000008)
Écrire dans HKEY_LOCAL_MACHINE. Si une valeur du nom spécifié dans pszValue existe déjà, elle est remplacée.
SHREGSET_DEFAULT (0x00000006)
Équivalent à (SHREGSET_FORCE_HKCU | SHREGSET_HKLM).
Valeur de retour
Type : LSTATUS
Retourne ERROR_SUCCESS en cas de réussite ; sinon, code d’erreur différent de zéro défini dans Winerror.h. Vous pouvez utiliser la fonction FormatMessage avec l’indicateur FORMAT_MESSAGE_FROM_SYSTEM pour récupérer une description générique de l’erreur.
Remarques
Pour utiliser SHRegWriteUSValue, vous devez d’abord ouvrir la clé avec SHRegOpenUSKey. Une fois la clé ouverte, vous pouvez utiliser SHRegWriteUSValue autant de fois que nécessaire.
Si vous n’avez besoin d’écrire qu’une seule valeur, vous devez utiliser SHRegSetUSValue, qui ouvre la clé et écrit la valeur.
Si vous devez écrire plusieurs valeurs sur la même clé, plusieurs appels à SHRegWriteUSValue sont généralement plus efficaces que SHRegSetUSValue, car la clé n’est ouverte qu’une seule fois.
Note
L’en-tête shlwapi.h définit SHRegWriteUSValue comme alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. Le mélange de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Windows 2000 Professionnel, Windows XP [applications de bureau uniquement] |
serveur minimum pris en charge | Windows 2000 Server [applications de bureau uniquement] |
plateforme cible | Windows |
d’en-tête | shlwapi.h |
bibliothèque | Shlwapi.lib |
DLL | Shlwapi.dll (version 4.71 ou ultérieure) |