#ifndef _NTREGAPI_H
/**
* Returns fixed-size cached key statistics without appending a name or class.
* Use the counts/maxima to plan value and direct-subkey enumeration, not as a
* guarantee that later calls see the same state. Lengths and maxima are bytes.
* \remarks The native/WoW64 query requires at least 40 bytes and
* returns ResultLength = 40. A shorter buffer returns STATUS_BUFFER_TOO_SMALL,
* not a partial cached record. NameLength at offset 32 describes the final key
* component, but no name follows it; query basic/name information for the text.
* Bytes 36 through 39 are trailing padding, not another field. Ordinary output
* sets TitleIndex to 0. Do not infer semantics from padding contents.
* \sa https://learn.microsoft.com/en-us/windows-hardware/drivers/ddi/ntddk/ns-ntddk-_key_cached_information
*/
typedef struct _KEY_CACHED_INFORMATION
{
LARGE_INTEGER LastWriteTime;
ULONG TitleIndex;
ULONG SubKeys;
ULONG MaxNameLength;
ULONG Values;
ULONG MaxValueNameLength;
ULONG MaxValueDataLength;
ULONG NameLength;
} KEY_CACHED_INFORMATION, *PKEY_CACHED_INFORMATION;
View code on GitHub// ntddk.h
typedef struct _KEY_CACHED_INFORMATION {
LARGE_INTEGER LastWriteTime;
ULONG TitleIndex;
ULONG SubKeys;
ULONG MaxNameLen;
ULONG Values;
ULONG MaxValueNameLen;
ULONG MaxValueDataLen;
ULONG NameLength;
} KEY_CACHED_INFORMATION, *PKEY_CACHED_INFORMATION;
View the official Windows Driver Kit DDI referenceThis structure is documented in Windows Driver Kit.
The KEY_CACHED_INFORMATION structure holds the cached information available for a registry key or subkey.
LastWriteTimeThe last time the key or any of its values changed. This time value is expressed in absolute system time format. Absolute system time is the number of 100-nanosecond intervals since the start of the year 1601 in the Gregorian calendar.
TitleIndexDevice and intermediate drivers should ignore this member.
SubKeysThe number of subkeys for a key.
MaxNameLenThe maximum number of bytes for a subkey name.
ValuesThe number of value entries.
MaxValueNameLenThe maximum length, in bytes, of any value entry name.
MaxValueDataLenThe maximum length, in bytes, of a value entry data field.
NameLengthThe size, in bytes, of the key name.
KEY_VIRTUALIZATION_INFORMATION