winnt.h header

This header is used by multiple technologies. For more information, see:

winnt.h contains the following programming interfaces:

Functions

 
_InlineInterlockedAdd

Performs an atomic addition operation on the specified LONG values. The operation is performed with acquire memory ordering semantics.
_InlineInterlockedAdd64

Performs an atomic addition operation on the specified LONG64 values.
_interlockedbittestandreset

Tests the specified bit of the specified LONG value and sets it to 0. The operation is atomic.
_interlockedbittestandreset64

Tests the specified bit of the specified LONG64 value and sets it to 0. The operation is atomic.
_interlockedbittestandset

Tests the specified bit of the specified LONG value and sets it to 1. The operation is atomic.
_interlockedbittestandset64

Tests the specified bit of the specified LONG64 value and sets it to 1. The operation is atomic.
C_ASSERT

Checks assertions at compile time.
FIELD_OFFSET

The FIELD_OFFSET macro returns the byte offset of a named field in a known structure type. (FIELD_OFFSET macro)
GetCurrentFiber

Retrieves the address of the current fiber.
GetFiberData

Retrieves the fiber data associated with the current fiber.
Int32x32To64

Multiplies two signed 32-bit integers, returning a signed 64-bit integer result.
Int64ShllMod32

Performs a left logical shift operation on an unsigned 64-bit integer value. The function provides improved shifting code for left logical shifts where the shift count is in the range 0-31.
Int64ShraMod32

Performs a right arithmetic shift operation on a signed 64-bit integer value. The function provides improved shifting code for right arithmetic shifts where the shift count is in the range 0-31.
Int64ShrlMod32

Performs a right logical shift operation on an unsigned 64-bit integer value. The function provides improved shifting code for right logical shifts where the shift count is in the range 0-31.
InterlockedAdd

Performs an atomic addition operation on the specified LONG values.
InterlockedAnd

Performs an atomic AND operation on the specified LONG values.
InterlockedAnd16

Performs an atomic AND operation on the specified SHORT values.
InterlockedAnd64

Performs an atomic AND operation on the specified LONGLONG values.
InterlockedAnd8

Performs an atomic AND operation on the specified char values.
InterlockedCompareExchange

Performs an atomic compare-and-exchange operation on the specified values. The function compares two specified 32-bit values and exchanges with another 32-bit value based on the outcome of the comparison.
InterlockedCompareExchange128

Performs an atomic compare-and-exchange operation on the specified values. The function compares two specified 128-bit values and exchanges with another 128-bit value based on the outcome of the comparison.
InterlockedCompareExchange16

Performs an atomic compare-and-exchange operation on the specified values. The function compares two specified 16-bit values and exchanges with another 16-bit value based on the outcome of the comparison.
InterlockedCompareExchange64

Performs an atomic compare-and-exchange operation on the specified values. The function compares two specified 64-bit values and exchanges with another 64-bit value based on the outcome of the comparison.
InterlockedCompareExchangePointer

Performs an atomic compare-and-exchange operation on the specified values. The function compares two specified pointer values and exchanges with another pointer value based on the outcome of the comparison.
InterlockedDecrement

Decrements (decreases by one) the value of the specified 32-bit variable as an atomic operation.
InterlockedDecrement16

Decrements (decreases by one) the value of the specified 16-bit variable as an atomic operation.
InterlockedDecrement64

Decrements (decreases by one) the value of the specified 64-bit variable as an atomic operation.
InterlockedExchange

Sets a 32-bit variable to the specified value as an atomic operation.
InterlockedExchange16

Sets a 16-bit variable to the specified value as an atomic operation.
InterlockedExchange64

Sets a 64-bit variable to the specified value as an atomic operation.
InterlockedExchange8

Sets an 8-bit variable to the specified value as an atomic operation.
InterlockedExchangeAdd

Performs an atomic addition of two 32-bit values.
InterlockedExchangeAdd64

Performs an atomic addition of two 64-bit values.
InterlockedExchangePointer

Atomically exchanges a pair of addresses.
InterlockedIncrement

Increments (increases by one) the value of the specified 32-bit variable as an atomic operation.
InterlockedIncrement16

Increments (increases by one) the value of the specified 16-bit variable as an atomic operation.
InterlockedIncrement64

Increments (increases by one) the value of the specified 64-bit variable as an atomic operation.
InterlockedOr

Performs an atomic OR operation on the specified LONG values.
InterlockedOr16

Performs an atomic OR operation on the specified SHORT values.
InterlockedOr64

Performs an atomic OR operation on the specified LONGLONG values.
InterlockedOr8

Performs an atomic OR operation on the specified char values.
InterlockedXor

Performs an atomic XOR operation on the specified LONG values.
InterlockedXor16

Performs an atomic XOR operation on the specified SHORT values.
InterlockedXor64

Performs an atomic XOR operation on the specified LONGLONG values.
InterlockedXor8

Performs an atomic XOR operation on the specified char values.
IsReparseTagMicrosoft

Determines whether a reparse point tag indicates a Microsoft reparse point.
IsReparseTagNameSurrogate

Determines whether a tag's associated reparse point is a surrogate for another named entity (for example, a mounted folder).
LANGIDFROMLCID

Retrieves a language identifier from a locale identifier.
MAKELANGID

Creates a language identifier from a primary language identifier and a sublanguage identifier.
MAKELCID

Creates a locale identifier from a language identifier and a sort order identifier.
MAKESORTLCID

Constructs a locale identifier (LCID) from a language identifier, a sort order identifier, and the sort version.
MemoryBarrier

Creates a hardware memory barrier (fence) that prevents the CPU from re-ordering read and write operations. It may also prevent the compiler from re-ordering read and write operations.
Multiply128

Multiplies two 64-bit integers to produce a 128-bit integer.
MultiplyExtract128

Multiplies two 64-bit integers to produce a 128-bit integer, shifts the product to the right by the specified number of bits, and returns the low 64 bits of the result.
MultiplyHigh

Multiplies two 64-bit integers to produce a 128-bit integer and gets the high 64 bits.
NtCurrentTeb

The NtCurrentTeb routine returns a pointer to the Thread Environment Block (TEB) of the current thread.
PopulationCount64

Counts the number of one bits (population count) in a 64-bit unsigned integer.
PreFetchCacheLine

Indicates to the processor that a cache line will be needed in the near future.
PRIMARYLANGID

Extracts a primary language identifier from a language identifier.
RtlAddFunctionTable

Adds a dynamic function table to the dynamic function table list. (RtlAddFunctionTable)
RtlAddGrowableFunctionTable

Informs the system of a dynamic function table representing a region of memory containing code.
RtlCaptureContext

Retrieves a context record in the context of the caller.
RtlCaptureStackBackTrace

The RtlCaptureStackBackTrace routine captures a stack back trace by walking up the stack and recording the information for each frame.
RtlConvertDeviceFamilyInfoToString

Retrieves string representations of device family info.
RtlDeleteFunctionTable

Removes a dynamic function table from the dynamic function table list.
RtlDeleteGrowableFunctionTable

Informs the system that a previously reported dynamic function table is no longer in use.
RtlFirstEntrySList

Retrieves the first entry in a singly linked list. Access to the list is synchronized on a multiprocessor system.
RtlGrowFunctionTable

Reports that a dynamic function table has increased in size.
RtlInitializeSListHead

Initializes the head of a singly linked list. (RtlInitializeSListHead)
RtlInstallFunctionTableCallback

Adds a dynamic function table to the dynamic function table list. (RtlInstallFunctionTableCallback)
RtlInterlockedFlushSList

Removes all items from a singly linked list. Access to the list is synchronized on a multiprocessor system. (RtlInterlockedFlushSList)
RtlInterlockedPopEntrySList

Removes an item from the front of a singly linked list. Access to the list is synchronized on a multiprocessor system. (RtlInterlockedPopEntrySList)
RtlInterlockedPushEntrySList

Inserts an item at the front of a singly linked list. Access to the list is synchronized on a multiprocessor system. (RtlInterlockedPushEntrySList)
RtlIsEcCode

Returns a value indicating if the code pointed to by the supplied pointer is ARM emulation-compatible (ARM64EC).
RtlLookupFunctionEntry

Searches the active function tables for an entry that corresponds to the specified PC value.
RtlPcToFileHeader

Retrieves the base address of the image that contains the specified PC value.
RtlQueryDepthSList

Retrieves the number of entries in the specified singly linked list. (RtlQueryDepthSList)
RtlRestoreContext

Restores the context of the caller to the specified context record.
RtlUnwind

Initiates an unwind of procedure call frames. (RtlUnwind)
RtlUnwind2

Initiates an unwind of procedure call frames. (RtlUnwind2)
RtlUnwindEx

Initiates an unwind of procedure call frames.
RtlVirtualUnwind

Retrieves the invocation context of the function that precedes the specified function context.
ShiftLeft128

Shifts 128-bit left.
ShiftRight128

Shifts 128-bit right.
SORTIDFROMLCID

Retrieves a sort order identifier from a locale identifier.
SORTVERSIONFROMLCID

Retrieves the sort version from a locale identifier.
SUBLANGID

Extracts a sublanguage identifier from a language identifier.
TEXT

Identifies a string as Unicode when UNICODE is defined by a preprocessor directive during compilation. Otherwise, the macro identifies a string as an ANSI string.
TpDestroyCallbackEnviron

Deletes the specified callback environment. Call this function when the callback environment is no longer needed for creating new thread pool objects. (TpDestroyCallbackEnviron)
TpInitializeCallbackEnviron

Initializes a callback environment for the thread pool.
TpSetCallbackActivationContext

Assigns an activation context to the callback environment.
TpSetCallbackCleanupGroup

Associates the specified cleanup group with the specified callback environment. (TpSetCallbackCleanupGroup)
TpSetCallbackFinalizationCallback

Indicates a function to call when the callback environment is finalized.
TpSetCallbackLongFunction

Indicates that callbacks associated with this callback environment may not return quickly. (TpSetCallbackLongFunction)
TpSetCallbackNoActivationContext

Indicates that the callback environment has no activation context.
TpSetCallbackPersistent

Specifies that the callback should run on a persistent thread. (TpSetCallbackPersistent)
TpSetCallbackPriority

Specifies the priority of a callback function relative to other work items in the same thread pool. (TpSetCallbackPriority)
TpSetCallbackRaceWithDll

Ensures that the specified DLL remains loaded as long as there are outstanding callbacks. (TpSetCallbackRaceWithDll)
TpSetCallbackThreadpool

Assigns a thread pool to a callback environment.
UInt32x32To64

Multiplies two unsigned 32-bit integers, returning an unsigned 64-bit integer result.
UnsignedMultiply128

Multiplies two unsigned 64-bit integers to produce an unsigned 128-bit integer.
UnsignedMultiplyExtract128

Multiplies two unsigned 64-bit integers to produce an unsigned 128-bit integer, shifts the product to the right by the specified number of bits, and returns the low 64 bits of the result.
UnsignedMultiplyHigh

Multiplies two 64-bit integers to produce a 128-bit integer and gets the high unsigned 64 bits.
VER_SET_CONDITION

Sets the bits of a 64-bit value to indicate the comparison operator to use for a specified operating system version attribute. This macro is used to build the dwlConditionMask parameter of the VerifyVersionInfo function.
VerSetConditionMask

Sets the bits of a 64-bit value to indicate the comparison operator to use for a specified operating system version attribute. This function is used to build the dwlConditionMask parameter of the VerifyVersionInfo function.
YieldProcessor

Signals to the processor to give resources to threads that are waiting for them.

Callback functions

 
PAPCFUNC

An application-defined completion routine. Specify this address when calling the QueueUserAPC function.
PFLS_CALLBACK_FUNCTION

An application-defined function. If the FLS slot is in use, FlsCallback is called on fiber deletion, thread exit, and when an FLS index is freed.
PSECURE_MEMORY_CACHE_CALLBACK

An application-defined function previously registered with the AddSecureMemoryCacheCallback function that is called when a secured memory range is freed or its protections are changed.
PVECTORED_EXCEPTION_HANDLER

An application-defined function that serves as a vectored exception handler.
RTL_UMS_SCHEDULER_ENTRY_POINT

The application-defined user-mode scheduling (UMS) scheduler entry point function associated with a UMS completion list.

Structures

 
ACCESS_ALLOWED_ACE

Defines an access control entry (ACE) for the discretionary access control list (DACL) that controls access to an object. An access-allowed ACE allows access to an object for a specific trustee identified by a security identifier (SID).
ACCESS_ALLOWED_CALLBACK_ACE

The ACCESS_ALLOWED_CALLBACK_ACE structure defines an access control entry for the discretionary access control list that controls access to an object.
ACCESS_ALLOWED_CALLBACK_OBJECT_ACE

Defines an access control entry (ACE) that controls allowed access to an object, property set, or property.
ACCESS_ALLOWED_OBJECT_ACE

Defines an access control entry (ACE) that controls allowed access to an object, a property set, or property.
ACCESS_DENIED_ACE

Defines an access control entry (ACE) for the discretionary access control list (DACL) that controls access to an object. An access-denied ACE denies access to an object for a specific trustee identified by a security identifier (SID).
ACCESS_DENIED_CALLBACK_ACE

The ACCESS_DENIED_CALLBACK_ACE structure defines an access control entry for the discretionary access control list that controls access to an object.
ACCESS_DENIED_CALLBACK_OBJECT_ACE

The ACCESS_DENIED_CALLBACK_OBJECT_ACE structure defines an access control entry that controls denied access to an object, a property set, or property.
ACCESS_DENIED_OBJECT_ACE

Defines an access control entry (ACE) that controls denied access to an object, a property set, or property.
ACE_HEADER

Defines the type and size of an access control entry (ACE).
ACL

Header of an access control list (ACL).
ACL_REVISION_INFORMATION

Contains revision information about an ACL structure.
ACL_SIZE_INFORMATION

Contains information about the size of an ACL structure.
ACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION

The ACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION structure is used by the QueryActCtxW function.
ACTIVATION_CONTEXT_COMPATIBILITY_INFORMATION

The ACTIVATION_CONTEXT_COMPATIBILITY_INFORMATION structure is used by the QueryActCtxW function.
ACTIVATION_CONTEXT_DETAILED_INFORMATION

The ACTIVATION_CONTEXT_DETAILED_INFORMATION structure is used by the QueryActCtxW function.
ACTIVATION_CONTEXT_QUERY_INDEX

The ACTIVATION_CONTEXT_QUERY_INDEX structure is used by QueryActCtxW function.
ACTIVATION_CONTEXT_RUN_LEVEL_INFORMATION

The ACTIVATION_CONTEXT_RUN_LEVEL_INFORMATION structure is used by the QueryActCtxW function.
ADMINISTRATOR_POWER_POLICY

Represents the administrator override power policy settings.
ARM64_NT_CONTEXT

Contains processor-specific register data. The system uses CONTEXT structures to perform various internal operations.C
ASSEMBLY_FILE_DETAILED_INFORMATION

The ASSEMBLY_FILE_DETAILED_INFORMATION structure is used by the QueryActCtxW function.
BATTERY_REPORTING_SCALE

Contains the granularity of the battery capacity that is reported by IOCTL_BATTERY_QUERY_STATUS.
CACHE_DESCRIPTOR

Describes the cache attributes.
CACHE_RELATIONSHIP

Describes cache attributes. This structure is used with the GetLogicalProcessorInformationEx function.
CLAIM_SECURITY_ATTRIBUTE_FQBN_VALUE

Specifies the fully qualified binary name.
CLAIM_SECURITY_ATTRIBUTE_OCTET_STRING_VALUE

Specifies the OCTET_STRING value type of the claim security attribute.
CLAIM_SECURITY_ATTRIBUTE_RELATIVE_V1

Defines a resource attribute that is defined in continuous memory for persistence within a serialized security descriptor.
CLAIM_SECURITY_ATTRIBUTE_V1

Defines a security attribute that can be associated with a token or authorization context.
CLAIM_SECURITY_ATTRIBUTES_INFORMATION

Defines the security attributes for the claim.
COMPATIBILITY_CONTEXT_ELEMENT

The COMPATIBILITY_CONTEXT_ELEMENT structure is used by the QueryActCtxW function as part of the ACTIVATION_CONTEXT_COMPATIBILITY_INFORMATION structure.
CONTEXT

Contains processor-specific register data. The system uses CONTEXT structures to perform various internal operations. (CONTEXT)
ENCLAVE_CREATE_INFO_SGX

Contains architecture-specific information to use to create an enclave when the enclave type is ENCLAVE_TYPE_SGX, which specifies an enclave for the Intel Software Guard Extensions (SGX) architecture extension.
ENCLAVE_CREATE_INFO_VBS

Contains architecture-specific information to use to create an enclave when the enclave type is ENCLAVE_TYPE_VBS, which specifies a virtualization-based security (VBS) enclave.
ENCLAVE_INIT_INFO_SGX

Contains architecture-specific information to use to initialize an enclave when the enclave type is ENCLAVE_TYPE_SGX, which specifies an enclave for the Intel Software Guard Extensions (SGX) architecture extension.
ENCLAVE_INIT_INFO_VBS

Contains architecture-specific information to use to initialize an enclave when the enclave type is ENCLAVE_TYPE_VBS, which specifies a virtualization-based security (VBS) enclave.
EVENTLOGRECORD

Contains information about an event record returned by the ReadEventLog function.
EXCEPTION_POINTERS

Contains an exception record with a machine-independent description of an exception and a context record with a machine-dependent description of the processor context at the time of the exception.
EXCEPTION_RECORD

Describes an exception. (EXCEPTION_RECORD)
EXCEPTION_RECORD64

Describes an exception.E
FILE_ID_128

Defines a 128-bit file identifier.
FILE_NOTIFY_EXTENDED_INFORMATION

Describes the changes found by the ReadDirectoryChangesExW function.
FILE_NOTIFY_INFORMATION

Describes the changes found by the ReadDirectoryChangesW function.
FILE_SEGMENT_ELEMENT

The FILE_SEGMENT_ELEMENT structure represents a segment buffer structure for scatter/gather read/write actions.
FPO_DATA

Represents the stack frame layout for a function on an x86 computer when frame pointer omission (FPO) optimization is used. The structure is used to locate the base of the call frame.
GENERIC_MAPPING

Defines the mapping of generic access rights to specific and standard access rights for an object.
GROUP_AFFINITY

Represents a processor group-specific affinity, such as the affinity of a thread.
GROUP_RELATIONSHIP

Represents information about processor groups. This structure is used with the GetLogicalProcessorInformationEx function.
HARDWARE_COUNTER_DATA

Contains the hardware counter value.
HEAP_OPTIMIZE_RESOURCES_INFORMATION

Specifies flags for a HeapOptimizeResources operation initiated with HeapSetInformation.
IMAGE_COFF_SYMBOLS_HEADER

Represents the COFF symbols header.
IMAGE_DATA_DIRECTORY

Represents the data directory.
IMAGE_DEBUG_DIRECTORY

Represents the debug directory format.
IMAGE_ENCLAVE_CONFIG32

Defines the format of the enclave configuration for systems running 32-bit Windows. (32 bit)
IMAGE_ENCLAVE_CONFIG64

Defines the format of the enclave configuration for systems running 32-bit Windows. (64 bit)
IMAGE_ENCLAVE_IMPORT

Defines a entry in the array of images that an enclave can import.
IMAGE_FILE_HEADER

Represents the COFF header format.
IMAGE_FUNCTION_ENTRY

Represents an entry in the function table. (IMAGE_FUNCTION_ENTRY)
IMAGE_FUNCTION_ENTRY64

Represents an entry in the function table.I
IMAGE_LOAD_CONFIG_DIRECTORY32

Contains the load configuration data of an image. (32 bit)
IMAGE_LOAD_CONFIG_DIRECTORY64

Contains the load configuration data of an image. (64 bit)
IMAGE_NT_HEADERS32

Represents the PE header format. (32 bit)
IMAGE_NT_HEADERS64

Represents the PE header format. (64 bit)
IMAGE_OPTIONAL_HEADER32

Represents the optional header format. (32 bit)
IMAGE_OPTIONAL_HEADER64

Represents the optional header format. (64 bit)
IMAGE_SECTION_HEADER

Represents the image section header format.
IO_COUNTERS

Contains I/O accounting information for a process or a job object.
JOBOBJECT_ASSOCIATE_COMPLETION_PORT

Contains information used to associate a completion port with a job.
JOBOBJECT_BASIC_ACCOUNTING_INFORMATION

Contains basic accounting information for a job object.
JOBOBJECT_BASIC_AND_IO_ACCOUNTING_INFORMATION

Contains basic accounting and I/O accounting information for a job object.
JOBOBJECT_BASIC_LIMIT_INFORMATION

Contains basic limit information for a job object.
JOBOBJECT_BASIC_PROCESS_ID_LIST

Contains the process identifier list for a job object.
JOBOBJECT_BASIC_UI_RESTRICTIONS

Contains basic user-interface restrictions for a job object.
JOBOBJECT_CPU_RATE_CONTROL_INFORMATION

Contains CPU rate control information for a job object. This structure is used by the SetInformationJobObject and QueryInformationJobObject functions with the JobObjectCpuRateControlInformation information class.
JOBOBJECT_END_OF_JOB_TIME_INFORMATION

Specifies the action the system will perform when an end-of-job time limit is exceeded.
JOBOBJECT_EXTENDED_LIMIT_INFORMATION

Contains basic and extended limit information for a job object.
JOBOBJECT_LIMIT_VIOLATION_INFORMATION

Contains information about resource notification limits that have been exceeded for a job object. This structure is used with the QueryInformationJobObject function with the JobObjectLimitViolationInformation information class.
JOBOBJECT_LIMIT_VIOLATION_INFORMATION_2

Contains extended information about resource notification limits that have been exceeded for a job object. This structure is used with the QueryInformationJobObject function with the JobObjectLimitViolationInformation2 information class.
JOBOBJECT_NET_RATE_CONTROL_INFORMATION

Contains information used to control the network traffic for a job. This structure is used by the SetInformationJobObject and QueryInformationJobObject functions with the JobObjectNetRateControlInformation information class.
JOBOBJECT_NOTIFICATION_LIMIT_INFORMATION

Contains information about notification limits for a job object. This structure is used by the SetInformationJobObject and QueryInformationJobObject functions with the JobObjectNotificationLimitInformation information class.
JOBOBJECT_NOTIFICATION_LIMIT_INFORMATION_2

Contains extended information about notification limits for a job object. This structure is used by the SetInformationJobObject and QueryInformationJobObject functions with the JobObjectNotificationLimitInformation2 information class.
JOBOBJECT_SECURITY_LIMIT_INFORMATION

Contains the security limitations for a job object.
LARGE_INTEGER

The LARGE_INTEGER structure represents a 64-bit signed integer value. (LARGE_INTEGER union (winnt.h))
LDT_ENTRY

Describes an entry in the descriptor table. This structure is valid only on x86-based systems.
LUID

Describes a local identifier for an adapter. (LUID)
LUID_AND_ATTRIBUTES

Represents a locally unique identifier (LUID) and its attributes.
MEM_ADDRESS_REQUIREMENTS

Specifies a lowest and highest base address and alignment as part of an extended parameter to a function that manages virtual memory.
MEM_EXTENDED_PARAMETER

Represents an extended parameter for a function that manages virtual memory.
MEMORY_BASIC_INFORMATION

Contains information about a range of pages in the virtual address space of a process.
MESSAGE_RESOURCE_BLOCK

Contains information about message strings with identifiers in the range indicated by the LowId and HighId members.
MESSAGE_RESOURCE_DATA

Contains information about formatted text for display as an error message or in a message box in a message table resource.
MESSAGE_RESOURCE_ENTRY

Contains the error message or message box display text for a message table resource.
NUMA_NODE_RELATIONSHIP

Represents information about a NUMA node in a processor group. This structure is used with the GetLogicalProcessorInformationEx function.
OBJECT_TYPE_LIST

Identifies an object type element in a hierarchy of object types.
OSVERSIONINFOA

Contains operating system version information. (ANSI)
OSVERSIONINFOEXA

Contains operating system version information. The information includes major and minor version numbers, a build number, a platform identifier, and information about product suites and the latest Service Pack installed on the system. (ANSI)
OSVERSIONINFOEXW

Contains operating system version information. The information includes major and minor version numbers, a build number, a platform identifier, and information about product suites and the latest Service Pack installed on the system. (Unicode)
OSVERSIONINFOW

Contains operating system version information. (Unicode)
PERFORMANCE_DATA

Contains the thread profiling and hardware counter data that you requested.
POWER_ACTION_POLICY

Contains information used to set the system power state.
PRIVILEGE_SET

Specifies a set of privileges.
PROCESS_DYNAMIC_EH_CONTINUATION_TARGET

Contains dynamic exception handling continuation targets.
PROCESS_DYNAMIC_ENFORCED_ADDRESS_RANGE

Contains dynamic enforced address ranges used by various features related to user-mode Hardware-enforced Stack Protection (HSP).
PROCESS_MITIGATION_ASLR_POLICY

Contains process mitigation policy settings for Address Space Randomization Layout (ASLR).
PROCESS_MITIGATION_BINARY_SIGNATURE_POLICY

Contains process mitigation policy settings for the loading of images depending on the signatures for the image.
PROCESS_MITIGATION_CONTROL_FLOW_GUARD_POLICY

Contains process mitigation policy settings for Control Flow Guard (CFG).
PROCESS_MITIGATION_DEP_POLICY

Contains process mitigation policy settings for data execution prevention (DEP).
PROCESS_MITIGATION_DYNAMIC_CODE_POLICY

Contains process mitigation policy settings for restricting dynamic code generation and modification.
PROCESS_MITIGATION_EXTENSION_POINT_DISABLE_POLICY

Contains process mitigation policy settings for legacy extension point DLLs.
PROCESS_MITIGATION_FONT_DISABLE_POLICY

Contains process mitigation policy settings for the loading of non-system fonts.
PROCESS_MITIGATION_IMAGE_LOAD_POLICY

Contains process mitigation policy settings for the loading of images from a remote device.
PROCESS_MITIGATION_REDIRECTION_TRUST_POLICY

Contains process mitigation policy settings for the ???.
PROCESS_MITIGATION_SIDE_CHANNEL_ISOLATION_POLICY

This data structure provides the status of process policies that are related to the mitigation of side channels. This can include side channel attacks involving speculative execution and page combining.
PROCESS_MITIGATION_STRICT_HANDLE_CHECK_POLICY

Used to impose new behavior on handle references that are not valid.
PROCESS_MITIGATION_SYSTEM_CALL_DISABLE_POLICY

Used to impose restrictions on what system calls can be invoked by a process.
PROCESS_MITIGATION_USER_SHADOW_STACK_POLICY

Contains process mitigation policy settings for user-mode Hardware-enforced Stack Protection (HSP).
PROCESSOR_GROUP_INFO

Represents the number and affinity of processors in a processor group.
PROCESSOR_NUMBER

Represents a logical processor in a processor group.
PROCESSOR_POWER_POLICY

Contains information about processor performance control and C-states.
PROCESSOR_POWER_POLICY_INFO

Contains information about processor C-state policy settings.
PROCESSOR_RELATIONSHIP

Represents information about affinity within a processor group. This structure is used with the GetLogicalProcessorInformationEx function.
QUOTA_LIMITS

Describes the amount of system resources available to a user.
REPARSE_GUID_DATA_BUFFER

Contains information about a reparse point.
RUNTIME_FUNCTION

Represents an entry in the function table on 64-bit Windows.
SECURITY_CAPABILITIES

Defines the security capabilities of the app container.
SECURITY_DESCRIPTOR

Contains the security information associated with an object.
SECURITY_QUALITY_OF_SERVICE

Contains information used to support client impersonation.
SID

Used to uniquely identify users or groups.
SID_AND_ATTRIBUTES

Represents a security identifier (SID) and its attributes.
SID_AND_ATTRIBUTES_HASH

Specifies a hash values for the specified array of security identifiers (SIDs).
SID_IDENTIFIER_AUTHORITY

Represents the top-level authority of a security identifier (SID).
SINGLE_LIST_ENTRY

Represents an item in a singly linked list.S
SLIST_ENTRY

Represents an item in a singly linked list. (SLIST_ENTRY)
SYSTEM_ALARM_ACE

The SYSTEM_ALARM_ACE structure is reserved for future use.
SYSTEM_ALARM_CALLBACK_ACE

The SYSTEM_ALARM_CALLBACK_ACE structure is reserved for future use.
SYSTEM_ALARM_CALLBACK_OBJECT_ACE

The SYSTEM_ALARM_CALLBACK_OBJECT_ACE structure is reserved for future use.
SYSTEM_ALARM_OBJECT_ACE

The SYSTEM_ALARM_OBJECT_ACE structure is reserved for future use.
SYSTEM_AUDIT_ACE

Defines an access control entry (ACE) for the system access control list (SACL) that specifies what types of access cause system-level notifications.
SYSTEM_AUDIT_CALLBACK_ACE

The SYSTEM_AUDIT_CALLBACK_ACE structure defines an access control entry for the system access control list that specifies what types of access cause system-level notifications.
SYSTEM_AUDIT_CALLBACK_OBJECT_ACE

The SYSTEM_AUDIT_CALLBACK_OBJECT_ACE structure defines an access control entry for a system access control list.
SYSTEM_AUDIT_OBJECT_ACE

Defines an access control entry (ACE) for a system access control list (SACL).
SYSTEM_BATTERY_STATE

Contains information about the current state of the system battery.
SYSTEM_CPU_SET_INFORMATION

This structure is returned by GetSystemCpuSetInformation. It is used to enumerate the CPU Sets on the system and determine their current state.
SYSTEM_LOGICAL_PROCESSOR_INFORMATION

Describes the relationship between the specified processor set. This structure is used with the GetLogicalProcessorInformation function.
SYSTEM_LOGICAL_PROCESSOR_INFORMATION_EX

Contains information about the relationships of logical processors and related hardware. The GetLogicalProcessorInformationEx function uses this structure.
SYSTEM_MANDATORY_LABEL_ACE

Defines an access control entry (ACE) for the system access control list (SACL) that specifies the mandatory access level and policy for a securable object.
SYSTEM_POWER_CAPABILITIES

Contains information about the power capabilities of the system.
SYSTEM_POWER_LEVEL

Contains information about system battery drain policy settings.
SYSTEM_POWER_POLICY

Contains information about the current system power policy.
SYSTEM_RESOURCE_ATTRIBUTE_ACE

Defines an access control entry (ACE) for the system access control list (SACL) that specifies the system resource attributes for a securable object.
SYSTEM_SCOPED_POLICY_ID_ACE

Defines an access control entry (ACE) for the system access control list (SACL) that specifies the scoped policy identifier for a securable object.
TAPE_ERASE

Describes the partition to be erased.
TAPE_GET_DRIVE_PARAMETERS

Describes the tape drive. It is used by the GetTapeParameters function.
TAPE_GET_MEDIA_PARAMETERS

Describes the tape in the tape drive. It is used by the GetTapeParametersfunction.
TAPE_GET_POSITION

Describes the position of the tape.
TAPE_PREPARE

Describes how to prepare the tape.
TAPE_SET_DRIVE_PARAMETERS

Describes the tape drive. It is used by the SetTapeParametersfunction.
TAPE_SET_MEDIA_PARAMETERS

Describes the tape in the tape drive. It is used by the SetTapeParametersfunction.
TAPE_SET_POSITION

Describes how and where to position the tape.
TAPE_WRITE_MARKS

Describes the type and number of tapemarks to write.
TOKEN_ACCESS_INFORMATION

Specifies all the information in a token that is necessary to perform an access check.
TOKEN_APPCONTAINER_INFORMATION

Specifies all the information in a token that is necessary for an app container.
TOKEN_AUDIT_POLICY

Specifies the per user audit policy for a token.
TOKEN_CONTROL

Contains information that identifies an access token.
TOKEN_DEFAULT_DACL

Specifies a discretionary access control list (DACL).
TOKEN_DEVICE_CLAIMS

Defines the device claims for the token.
TOKEN_ELEVATION

Indicates whether a token has elevated privileges.
TOKEN_GROUPS

Contains information about the group security identifiers (SIDs) in an access token.
TOKEN_GROUPS_AND_PRIVILEGES

Contains information about the group security identifiers (SIDs) and privileges in an access token.
TOKEN_LINKED_TOKEN

Contains a handle to a token. This token is linked to the token being queried by the GetTokenInformation function or set by the SetTokenInformation function.
TOKEN_MANDATORY_LABEL

Specifies the mandatory integrity level for a token.
TOKEN_MANDATORY_POLICY

Specifies the mandatory integrity policy for a token.
TOKEN_ORIGIN

Contains information about the origin of the logon session.
TOKEN_OWNER

Contains the default owner security identifier (SID) that will be applied to newly created objects.
TOKEN_PRIMARY_GROUP

Specifies a group security identifier (SID) for an access token.
TOKEN_PRIVILEGES

Contains information about a set of privileges for an access token.
TOKEN_SOURCE

Identifies the source of an access token.
TOKEN_STATISTICS

Contains information about an access token.
TOKEN_USER

Identifies the user associated with an access token.
TOKEN_USER_CLAIMS

Defines the user claims for the token.
ULARGE_INTEGER

The ULARGE_INTEGER structure represents a 64-bit unsigned integer value. (ULARGE_INTEGER union (winnt.h))
UMS_CREATE_THREAD_ATTRIBUTES

Specifies attributes for a user-mode scheduling (UMS) worker thread.
WOW64_CONTEXT

Represents a context frame on WOW64.
WOW64_FLOATING_SAVE_AREA

Represents the 80387 save area on WOW64.
WOW64_LDT_ENTRY

Describes an entry in the descriptor table for a 32-bit thread on a 64-bit system. This structure is valid only on 64-bit systems.

Enumerations

 
ACL_INFORMATION_CLASS

Contains values that specify the type of information being assigned to or retrieved from an access control list (ACL).
ACTCTX_COMPATIBILITY_ELEMENT_TYPE

The ACTCTX_COMPATIBILITY_ELEMENT_TYPE enumeration describes the compatibility element in the application manifest.
ACTCTX_REQUESTED_RUN_LEVEL

The ACTCTX_REQUESTED_RUN_LEVEL enumeration describes the requested run level of the activation context.
AUDIT_EVENT_TYPE

Defines values that indicate the type of object being audited. The AccessCheckByTypeAndAuditAlarm and AccessCheckByTypeResultListAndAuditAlarm functions use these values.
COMPARTMENT_ID

The COMPARTMENT_ID enumeration indicates the network routing compartment identifier.
FIRMWARE_TYPE

Specifies a firmware type.
HARDWARE_COUNTER_TYPE

Defines the types of hardware counters being profiled.
HEAP_INFORMATION_CLASS

Specifies the class of heap information to be set or retrieved.
JOB_OBJECT_NET_RATE_CONTROL_FLAGS

Specifies types of scheduling policies for network rate control.
LOGICAL_PROCESSOR_RELATIONSHIP

Represents the relationship between the processor set identified in the corresponding SYSTEM_LOGICAL_PROCESSOR_INFORMATION or SYSTEM_LOGICAL_PROCESSOR_INFORMATION_EX structure.
MANDATORY_LEVEL

Lists the possible security levels.
MEM_EXTENDED_PARAMETER_TYPE

Defines values for extended parameters used for file mapping into an address space.
POWER_ACTION

Defines values that are used to specify system power action types.
POWER_PLATFORM_ROLE

Indicates the OEM's preferred power management profile.
PROCESS_MITIGATION_POLICY

Represents the different process mitigation policies.
PROCESSOR_CACHE_TYPE

Represents the type of processor cache identified in the corresponding CACHE_DESCRIPTOR structure.
SECURITY_IMPERSONATION_LEVEL

Contains values that specify security impersonation levels. Security impersonation levels govern the degree to which a server process can act on behalf of a client process.
SID_NAME_USE

Contains values that specify the type of a security identifier (SID).
SYSTEM_POWER_CONDITION

Used by the GUID_ACDC_POWER_SOURCE power event to indicate the current power source.
SYSTEM_POWER_STATE

Defines values that are used to specify system power states.
TOKEN_ELEVATION_TYPE

Indicates the elevation type of token being queried by the GetTokenInformation function or set by the SetTokenInformation function.
TOKEN_INFORMATION_CLASS

Contains values that specify the type of information being assigned to or retrieved from an access token.
TOKEN_TYPE

Contains values that differentiate between a primary token and an impersonation token.
TRANSACTION_OUTCOME

Defines the outcomes (results) that KTM can assign to a transaction.
WELL_KNOWN_SID_TYPE

A list of commonly used security identifiers (SIDs). Programs can pass these values to the CreateWellKnownSid function to create a SID from this list.