Condividi tramite


Funzione ORQueryInfoKey

Recupera informazioni sulla chiave del Registro di sistema specificata in un hive del Registro di sistema offline.

Sintassi

DWORD ORQueryInfoKey(
  _In_        ORHKEY    Handle,
  _Out_opt_   PWSTR     lpClass,
  _Inout_opt_ PDWORD    lpcClass,
  _Out_opt_   PDWORD    lpcSubKeys,
  _Out_opt_   PDWORD    lpcMaxSubKeyLen,
  _Out_opt_   PDWORD    lpcMaxClassLen,
  _Out_opt_   PDWORD    lpcValues,
  _Out_opt_   PDWORD    lpcMaxValueNameLen,
  _Out_opt_   PDWORD    lpcMaxValueLen,
  _Out_opt_   PDWORD    lpcbSecurityDescriptor,
  _Out_opt_   PFILETIME lpftLastWriteTime
);

Parametri

Handle [in]

Handle per una chiave del Registro di sistema aperta in un hive del Registro di sistema offline.

lpClass [out, facoltativo]

Puntatore a un buffer che riceve la classe chiave. Questo parametro può essere NULL.

lpcClass [in, out, optional]

Puntatore a una variabile che specifica le dimensioni del buffer a cui punta il parametro lpClass , in caratteri.

Le dimensioni devono includere il carattere Null di terminazione. Quando la funzione viene restituita, questa variabile contiene le dimensioni della stringa di classe archiviata nel buffer. Il conteggio restituito non include il carattere Null di terminazione. 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 Null di terminazione.

Se lpClass è NULL, lpcClass può essere NULL.

Se il parametro lpClass è un indirizzo valido, ma il parametro lpcClass non è (ad esempio, se il parametro lpcClass è NULL), la funzione restituisce ERROR_INVALID_PARAMETER.

lpcSubKeys [out, facoltativo]

Puntatore a una variabile che riceve il numero di sottochiavi contenuti nella chiave specificata. Questo parametro può essere NULL.

lpcMaxSubKeyLen [out, facoltativo]

Puntatore a una variabile che riceve le dimensioni della sottochiave della chiave con il nome più lungo, in caratteri Unicode, senza includere il carattere Null di terminazione. Questo parametro può essere NULL.

lpcMaxClassLen [out, facoltativo]

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 Null di terminazione. Questo parametro può essere NULL.

lpcValues [out, facoltativo]

Puntatore a una variabile che riceve il numero di valori associati alla chiave. Questo parametro può essere NULL.

lpcMaxValueNameLen [out, facoltativo]

Puntatore a una variabile che riceve le dimensioni del nome del valore più lungo della chiave, in caratteri Unicode. Le dimensioni non includono il carattere Null di terminazione. Questo parametro può essere NULL.

lpcMaxValueLen [out, facoltativo]

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.

lpcbSecurityDescriptor [out, facoltativo]

Puntatore a una variabile che riceve le dimensioni del descrittore di sicurezza della chiave, in byte. Questo parametro può essere NULL.

lpftLastWriteTime [out, facoltativo]

Puntatore a una struttura FILETIME che riceve l'ora dell'ultima scrittura. Questo parametro può essere NULL.

La funzione imposta i membri della struttura FILETIME per indicare l'ultima volta in cui viene modificata la chiave o una delle relative voci di valore.

Valore restituito

Se la funzione ha esito positivo, il valore restituito viene 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.

Se il buffer lpClass è troppo piccolo per ricevere il nome della classe, la funzione restituisce ERROR_MORE_DATA.

Requisiti

Requisito Valore
Componente ridistribuibile
Libreria del Registro di sistema offline di Windows versione 1.0 o successiva
Intestazione
Offreg.h
DLL
Offreg.dll

Vedi anche

FILETIME

ORCreateKey

OROpenKey

ORDeleteKey