Condividi tramite


Funzione ClusterRegEnumValue (clusapi.h)

Enumera i valori di una chiave di database del cluster aperta.

Sintassi

DWORD ClusterRegEnumValue(
  [in]                HKEY    hKey,
  [in]                DWORD   dwIndex,
  [out]               LPWSTR  lpszValueName,
  [in, out]           LPDWORD lpcchValueName,
  [out, optional]     LPDWORD lpdwType,
  [out, optional]     LPBYTE  lpData,
  [in, out, optional] LPDWORD lpcbData
);

Parametri

[in] hKey

Handle della chiave del database del cluster da enumerare.

[in] dwIndex

Indice usato per identificare il valore successivo da enumerare. Questo parametro deve essere zero per la prima chiamata a ClusterRegEnumValue e quindi incrementato per le chiamate successive.

Poiché i valori non sono ordinati, qualsiasi nuovo valore ha un indice arbitrario. Ciò significa che ClusterRegEnumValue può restituire valori in qualsiasi ordine.

[out] lpszValueName

Puntatore a una stringa Unicode con terminazione null contenente il nome del valore restituito.

[in, out] lpcchValueName

Puntatore alla dimensione del buffer lpszValueName come conteggio dei caratteri. In input specificare il numero massimo di caratteri che il buffer può contenere, incluso il valore NULL di terminazione. Nell'output specifica il numero di caratteri nel nome risultante, escluse le terminazioni NULL.

[out, optional] lpdwType

Puntatore al codice di tipo per la voce valore o NULL se il codice di tipo non è obbligatorio. Il codice di tipo può essere uno dei valori seguenti.

REG_BINARY (3)

Dati binari in qualsiasi forma.

REG_DWORD (4)

Numero a 32 bit.

REG_DWORD_BIG_ENDIAN (5)

Numero a 32 bit archiviato in formato big-endian.

REG_EXPAND_SZ (2)

Stringa Unicode con terminazione null contenente riferimenti non esplorati alle variabili di ambiente, ad esempio "%PATH%").

REG_MULTI_SZ (6)

Sequenza di stringhe con terminazione null, terminate da una stringa vuota (\0).

Di seguito è riportato un esempio:

String1\0String2\0String3\0LastString\0\0

Il primo \0 termina la prima stringa, il secondo all'ultimo \0 termina l'ultima stringa e il valore finale \0 termina la sequenza. Si noti che il terminatore finale deve essere fattoriato nella lunghezza della stringa.

REG_NONE (0)

Nessun tipo di valore definito.

REG_QWORD (11)

Numero a 64 bit.

REG_SZ (1)

Stringa Unicode con terminazione null.

[out, optional] lpData

Puntatore ai dati per la voce del valore. Questo parametro può essere NULL se i dati non sono necessari.

[in, out, optional] lpcbData

In input, puntatore a un conteggio di byte nel buffer a cui punta il parametro lpbData . In output, puntatore a un conteggio di byte risultanti dall'operazione. Questo parametro può essere NULL solo se lpbData è NULL.

Valore restituito

La funzione restituisce uno dei valori seguenti.

Codice/valore restituito Descrizione
ERROR_SUCCESS
0 (0x0)
L'operazione è stata completata.
ERROR_NO_MORE_ITEMS
259 (0x103)
Non sono disponibili più valori da restituire.
ERROR_MORE_DATA
234 (0xEA)
Uno dei buffer di output (lpszValueName o lpbData) è troppo piccolo per contenere i dati risultanti. I parametri lpcchValueName e lpbData indicano le dimensioni necessarie (si noti che lpcchValueName non include la terminazione NULL nel conteggio dei caratteri).
Codice errore di sistema
Operazione non riuscita.

Requisiti

   
Client minimo supportato Nessuno supportato
Server minimo supportato Windows Server 2008 Enterprise, Windows Server 2008 Datacenter
Piattaforma di destinazione Windows
Intestazione clusapi.h
Libreria ClusAPI.lib
DLL ClusAPI.dll

Vedi anche

ClusterRegOpenKey