KEY_HANDLE_TAGS_INFORMATION - NtDoc

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

/**
 * Supplies or retrieves metadata stored in the opened key body, not the key's persistent value data or access
 * mask. KeySetHandleTagsInformation requires exactly 4 input bytes, but the setter stores only the low 16
 * bits. KeyHandleTagsInformation query requires at least 4 bytes and zero-extends those stored bits into
 * HandleTags; its ResultLength is 4.
 *
 * The setter accepts a valid zero-access key handle. The query is deliberately different: it requires any
 * nonzero granted access, though not specifically KEY_QUERY_VALUE. Duplicated handles referencing the same
 * key body share tag changes; a separately opened handle has its own tag state. Initial tags need not be
 * zero, especially through WoW64.
 *
 * Unlike ordinary key-flag updates, this setter does not refresh the key's last-write time. It remains
 * subject to registry callbacks. Preserve existing tags unless intentionally changing their internal
 * semantics.
 */
typedef struct _KEY_HANDLE_TAGS_INFORMATION
{
    ULONG HandleTags;
} KEY_HANDLE_TAGS_INFORMATION, *PKEY_HANDLE_TAGS_INFORMATION;

#endif

View code on GitHub

NtDoc

No description available.