KEY_VALUE_INFORMATION_CLASS - NtDoc

Native API online documentation, based on the System Informer (formerly Process Hacker) phnt headers
#ifndef _NTREGAPI_H

/**
 * The KEY_VALUE_INFORMATION_CLASS enumeration type specifies the type of information to supply about the value of a registry key.
 * \sa https://learn.microsoft.com/en-us/windows-hardware/drivers/ddi/wdm/ne-wdm-_key_value_information_class
 */
typedef enum _KEY_VALUE_INFORMATION_CLASS
{
    KeyValueBasicInformation, // KEY_VALUE_BASIC_INFORMATION
    KeyValueFullInformation, // KEY_VALUE_FULL_INFORMATION
    KeyValuePartialInformation, // KEY_VALUE_PARTIAL_INFORMATION
    KeyValueFullInformationAlign64, // KEY_VALUE_FULL_INFORMATION_ALIGN64
    KeyValuePartialInformationAlign64,  // KEY_VALUE_PARTIAL_INFORMATION_ALIGN64
    KeyValueLayerInformation, // KEY_VALUE_LAYER_INFORMATION
    MaxKeyValueInfoClass
} KEY_VALUE_INFORMATION_CLASS;

#endif

View code on GitHub
// wdm.h

typedef enum _KEY_VALUE_INFORMATION_CLASS {
  KeyValueBasicInformation,
  KeyValueFullInformation,
  KeyValuePartialInformation,
  KeyValueFullInformationAlign64,
  KeyValuePartialInformationAlign64,
  KeyValueLayerInformation,
  MaxKeyValueInfoClass
} KEY_VALUE_INFORMATION_CLASS;

View the official Windows Driver Kit DDI reference

NtDoc

This enumeration is documented in Windows Driver Kit.

Windows Driver Kit DDI reference (ne-wdm-_key_value_information_class)

_KEY_VALUE_INFORMATION_CLASS enumeration

Description

The KEY_VALUE_INFORMATION_CLASS enumeration type specifies the type of information to supply about the value of a registry key.

Constants

KeyValueBasicInformation

The information is stored as a KEY_VALUE_BASIC_INFORMATION structure.

KeyValueFullInformation

The information is stored as a KEY_VALUE_FULL_INFORMATION structure.

KeyValuePartialInformation

The information is stored as a KEY_VALUE_PARTIAL_INFORMATION structure.

KeyValueFullInformationAlign64

The information is stored as a KEY_VALUE_FULL_INFORMATION structure that is aligned to a 64-bit (that is, 8-byte) boundary in memory. If the caller-supplied buffer does not start on a 64-bit boundary, ZwQueryValueKey returns STATUS_DATATYPE_MISALIGNMENT.

KeyValuePartialInformationAlign64

The information is stored as a KEY_VALUE_PARTIAL_INFORMATION_ALIGN64 structure that is aligned to a 64-bit (that is, 8-byte) boundary in memory. If the caller-supplied buffer does not start on a 64-bit boundary, ZwQueryValueKey returns STATUS_DATATYPE_MISALIGNMENT.

KeyValueLayerInformation

MaxKeyValueInfoClass

The maximum value in this enumeration type.

Remarks

Use the KEY_VALUE_INFORMATION_CLASS values to specify the type of data to be supplied by the ZwEnumerateValueKey and ZwQueryValueKey routines.

See also

KEY_VALUE_BASIC_INFORMATION

KEY_VALUE_FULL_INFORMATION

KEY_VALUE_PARTIAL_INFORMATION

ZwEnumerateValueKey

ZwQueryValueKey