Funzione RegQueryInfoKeyW (winreg.h)
Recupera informazioni sulla chiave del Registro di sistema specificata.
Sintassi
LSTATUS RegQueryInfoKeyW(
[in] HKEY hKey,
[out, optional] LPWSTR lpClass,
[in, out, optional] LPDWORD lpcchClass,
LPDWORD lpReserved,
[out, optional] LPDWORD lpcSubKeys,
[out, optional] LPDWORD lpcbMaxSubKeyLen,
[out, optional] LPDWORD lpcbMaxClassLen,
[out, optional] LPDWORD lpcValues,
[out, optional] LPDWORD lpcbMaxValueNameLen,
[out, optional] LPDWORD lpcbMaxValueLen,
[out, optional] LPDWORD lpcbSecurityDescriptor,
[out, optional] PFILETIME lpftLastWriteTime
);
Parametri
[in] hKey
Handle per una chiave del Registro di sistema aperta. La chiave deve essere stata aperta con il diritto di accesso KEY_QUERY_VALUE. Per altre informazioni, vedere sicurezza delle chiavi del Registro di sistema e diritti di accesso.
Questo handle viene restituito dal RegCreateKeyEx, RegCreateKeyTransacted, RegOpenKeyExo funzione RegOpenKeyTransacted. Può anche essere una delle chiavi predefinite seguenti:
HKEY_CLASSES_ROOT HKEY_CURRENT_CONFIG HKEY_CURRENT_USER HKEY_LOCAL_MACHINE HKEY_PERFORMANCE_DATA HKEY_USERS
[out, optional] lpClass
Puntatore a un buffer che riceve la classe definita dall'utente della chiave. Questo parametro può essere NULL.
[in, out, optional] lpcchClass
Puntatore a una variabile che specifica le dimensioni del buffer a cui punta il parametro lpClass, in caratteri.
Le dimensioni devono includere il carattere di terminazione null. Quando la funzione termina, questa variabile contiene le dimensioni della stringa di classe archiviata nel buffer. Il conteggio restituito non include il carattere di terminazione null. Se il buffer non è sufficientemente grande, la funzione restituisce ERROR_MORE_DATA e la variabile contiene le dimensioni della stringa, in caratteri, senza contare il carattere di terminazione null.
Se lpClass è NULL, lpcClass può essere NULL.
Se il parametro lpClass è un indirizzo valido, ma il parametro lpcClass non è, ad esempio, è NULL, la funzione restituisce ERROR_INVALID_PARAMETER.
lpReserved
Questo parametro è riservato e deve essere NULL.
[out, optional] lpcSubKeys
Puntatore a una variabile che riceve il numero di sottochiavi contenuti nella chiave specificata. Questo parametro può essere NULL.
[out, optional] lpcbMaxSubKeyLen
Puntatore a una variabile che riceve le dimensioni della sottochiave della chiave con il nome più lungo, in caratteri Unicode, senza includere il carattere di terminazione null. Questo parametro può essere NULL.
[out, optional] lpcbMaxClassLen
Puntatore a una variabile che riceve le dimensioni della stringa più lunga che specifica una classe di sottochiave, in caratteri Unicode. Il conteggio restituito non include il carattere di terminazione null. Questo parametro può essere NULL.
[out, optional] lpcValues
Puntatore a una variabile che riceve il numero di valori associati alla chiave. Questo parametro può essere NULL.
[out, optional] lpcbMaxValueNameLen
Puntatore a una variabile che riceve le dimensioni del nome di valore più lungo della chiave, in caratteri Unicode. Le dimensioni non includono il carattere di terminazione null. Questo parametro può essere NULL.
[out, optional] lpcbMaxValueLen
Puntatore a una variabile che riceve le dimensioni del componente dati più lungo tra i valori della chiave, in byte. Questo parametro può essere NULL.
[out, optional] lpcbSecurityDescriptor
Puntatore a una variabile che riceve le dimensioni del descrittore di sicurezza della chiave, in byte. Questo parametro può essere NULL.
[out, optional] lpftLastWriteTime
Puntatore a una struttura FILETIME
La funzione imposta i membri della struttura FILETIME
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 di sistema .
Se il buffer lpClass
Osservazioni
Nota
L'intestazione winreg.h definisce RegQueryInfoKey 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 |