winnt.h header
This header is used by multiple technologies. For more information, see:
- Application Installation and Servicing
- Backup
- Data Access and Storage
- Developer Notes
- DXGI
- Hardware Counter Profiling
- Internationalization for Windows Applications
- Kernel-Mode Driver Reference
- Menus and Other Resources
- Security and Identity
- System Services
- The Windows Shell
- Windows Management Instrumentation
- Windows Runtime C++ reference
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. |
USER_ACTIVITY_PRESENCE Specifies the presence of a user for the purposes of power management based on activity detected. |
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. |