RegOpenKeyW, fonction (winreg.h)
Ouvre la clé de Registre spécifiée.
Syntaxe
LSTATUS RegOpenKeyW(
[in] HKEY hKey,
[in, optional] LPCWSTR lpSubKey,
[out] PHKEY phkResult
);
Paramètres
[in] hKey
Handle vers une clé de Registre ouverte. Ce handle est retourné par la fonction RegCreateKeyEx
- HKEY_CLASSES_ROOT
- HKEY_CURRENT_CONFIG
- HKEY_CURRENT_USER
- HKEY_LOCAL_MACHINE
- HKEY_USERS
[in, optional] lpSubKey
Nom de la clé de Registre à ouvrir. Cette clé doit être une sous-clé de la clé identifiée par le paramètre hKey.
Les noms de clés ne respectent pas la casse.
Si ce paramètre est NULL ou un pointeur vers une chaîne vide, la fonction retourne le même handle que celui passé.
Pour plus d’informations, consultez Limites de taille des éléments de Registre.
[out] phkResult
Pointeur vers une variable qui reçoit un handle vers la clé ouverte. Si la clé n’est pas l’une des clés de Registre prédéfinies, appelez la fonction RegCloseKey une fois que vous avez terminé d’utiliser le handle.
Valeur de retour
Si la fonction réussit, la valeur de retour est ERROR_SUCCESS.
Si la fonction échoue, la valeur de retour est un code d’erreur différent de zéro défini dans Winerror.h. Vous pouvez utiliser la fonction FormatMessage
Remarques
La fonction RegOpenKey utilise le masque d’accès de sécurité par défaut pour ouvrir une clé. Si l’ouverture de la clé nécessite un autre droit d’accès, la fonction échoue, en retournant ERROR_ACCESS_DENIED. Une application doit utiliser la fonction RegOpenKeyEx pour spécifier un masque d’accès dans cette situation.
RegOpenKey ne crée pas la clé spécifiée si la clé n’existe pas dans la base de données.
Si votre service ou votre application emprunte l’identité de différents utilisateurs, n’utilisez pas cette fonction avec HKEY_CURRENT_USER. Au lieu de cela, appelez la fonction RegOpenCurrentUser.
Note
L’en-tête winreg.h définit RegOpenKey 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 [applications de bureau uniquement] |
serveur minimum pris en charge | Windows 2000 Server [applications de bureau uniquement] |
plateforme cible | Windows |
d’en-tête | winreg.h (inclure Windows.h) |
bibliothèque | Advapi32.lib |
DLL | Advapi32.dll |