Condividi tramite


Funzione RegOpenKeyW (winreg.h)

Apre la chiave del Registro di sistema specificata.

Nota Questa funzione viene fornita solo per compatibilità con le versioni a 16 bit di Windows. Le applicazioni devono usare la funzione regOpenKeyEx .
 

Sintassi

LSTATUS RegOpenKeyW(
  [in]           HKEY    hKey,
  [in, optional] LPCWSTR lpSubKey,
  [out]          PHKEY   phkResult
);

Parametri

[in] hKey

Handle per una chiave del Registro di sistema aperta. Questo handle viene restituito dalla funzione RegCreateKeyEx o RegOpenKeyEx oppure può essere una delle chiavi predefinite seguenti :

  • HKEY_CLASSES_ROOT
  • HKEY_CURRENT_CONFIG
  • HKEY_CURRENT_USER
  • HKEY_LOCAL_MACHINE
  • HKEY_USERS

[in, optional] lpSubKey

Nome della chiave del Registro di sistema da aprire. Questa chiave deve essere una sottochiave della chiave identificata dal parametro hKey.

I nomi delle chiavi non fanno distinzione tra maiuscole e minuscole.

Se questo parametro è NULL o un puntatore a una stringa vuota, la funzione restituisce lo stesso handle passato.

Per altre informazioni, vedere Limiti delle dimensioni degli elementi del Registro di sistema .

[out] phkResult

Puntatore a una variabile che riceve un handle per la chiave aperta. Se la chiave non è una delle chiavi predefinite del Registro di sistema, chiamare la funzione regCloseKey dopo aver terminato di usare l'handle.

Valore restituito

Se la funzione ha esito positivo, il valore restituito è ERROR_SUCCESS.

Se la funzione ha esito negativo, il valore restituito è un codice di errore diverso da zero definito in Winerror.h. È possibile usare la funzione FormatMessage con il flag FORMAT_MESSAGE_FROM_SYSTEM per ottenere una descrizione generica dell'errore.

Osservazioni

La funzione RegOpenKey usa la maschera di accesso di sicurezza predefinita per aprire una chiave. Se l'apertura della chiave richiede un diritto di accesso diverso, la funzione ha esito negativo, restituendo ERROR_ACCESS_DENIED. Un'applicazione deve usare la funzione regOpenKeyEx per specificare una maschera di accesso in questa situazione.

regOpenKey non crea la chiave specificata se la chiave non esiste nel database.

Se il servizio o l'applicazione rappresenta utenti diversi, non usare questa funzione con HKEY_CURRENT_USER. Chiamare invece la funzione RegOpenCurrentUser .

Nota

L'intestazione winreg.h definisce RegOpenKey come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante del preprocessore UNICODE. La combinazione dell'utilizzo dell'alias indipendente dalla codifica con il codice non indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere convenzioni di per i prototipi di funzioni.

Fabbisogno

Requisito Valore
client minimo supportato Windows 2000 Professional [solo app desktop]
server minimo supportato Windows 2000 Server [solo app desktop]
piattaforma di destinazione Finestre
intestazione winreg.h (include Windows.h)
libreria Advapi32.lib
dll Advapi32.dll

Vedere anche

RegCloseKey

RegDeleteKey

RegOpenKeyEx

funzioni del Registro di sistema

Panoramica del Registro di sistema