IMAGE_LOAD_CONFIG_DIRECTORY32 structure (winnt.h)
Contains the load configuration data of an image.
Syntax
typedef struct _IMAGE_LOAD_CONFIG_DIRECTORY32 {
DWORD Size;
DWORD TimeDateStamp;
WORD MajorVersion;
WORD MinorVersion;
DWORD GlobalFlagsClear;
DWORD GlobalFlagsSet;
DWORD CriticalSectionDefaultTimeout;
DWORD DeCommitFreeBlockThreshold;
DWORD DeCommitTotalFreeThreshold;
DWORD LockPrefixTable;
DWORD MaximumAllocationSize;
DWORD VirtualMemoryThreshold;
DWORD ProcessHeapFlags;
DWORD ProcessAffinityMask;
WORD CSDVersion;
WORD DependentLoadFlags;
DWORD EditList;
DWORD SecurityCookie;
DWORD SEHandlerTable;
DWORD SEHandlerCount;
DWORD GuardCFCheckFunctionPointer;
DWORD GuardCFDispatchFunctionPointer;
DWORD GuardCFFunctionTable;
DWORD GuardCFFunctionCount;
DWORD GuardFlags;
IMAGE_LOAD_CONFIG_CODE_INTEGRITY CodeIntegrity;
DWORD GuardAddressTakenIatEntryTable;
DWORD GuardAddressTakenIatEntryCount;
DWORD GuardLongJumpTargetTable;
DWORD GuardLongJumpTargetCount;
DWORD DynamicValueRelocTable;
DWORD CHPEMetadataPointer;
DWORD GuardRFFailureRoutine;
DWORD GuardRFFailureRoutineFunctionPointer;
DWORD DynamicValueRelocTableOffset;
WORD DynamicValueRelocTableSection;
WORD Reserved2;
DWORD GuardRFVerifyStackPointerFunctionPointer;
DWORD HotPatchTableOffset;
DWORD Reserved3;
DWORD EnclaveConfigurationPointer;
DWORD VolatileMetadataPointer;
DWORD GuardEHContinuationTable;
DWORD GuardEHContinuationCount;
DWORD GuardXFGCheckFunctionPointer;
DWORD GuardXFGDispatchFunctionPointer;
DWORD GuardXFGTableDispatchFunctionPointer;
DWORD CastGuardOsDeterminedFailureMode;
DWORD GuardMemcpyFunctionPointer;
} IMAGE_LOAD_CONFIG_DIRECTORY32, *PIMAGE_LOAD_CONFIG_DIRECTORY32;
Members
Size
The size of the structure. For Windows XP, the size must be specified as 64 for x86 images.
TimeDateStamp
The date and time stamp value. The value is represented in the number of seconds elapsed since midnight (00:00:00), January 1, 1970, Universal Coordinated Time, according to the system clock. The time stamp can be printed using the C run-time (CRT) function ctime.
MajorVersion
The major version number.
MinorVersion
The minor version number.
GlobalFlagsClear
The global flags that control system behavior. For more information, see Gflags.exe.
GlobalFlagsSet
The global flags that control system behavior. For more information, see Gflags.exe.
CriticalSectionDefaultTimeout
The critical section default time-out value.
DeCommitFreeBlockThreshold
The size of the minimum block that must be freed before it is freed (de-committed), in bytes. This value is advisory.
DeCommitTotalFreeThreshold
The size of the minimum total memory that must be freed in the process heap before it is freed (de-committed), in bytes. This value is advisory.
LockPrefixTable
The VA of a list of addresses where the LOCK prefix is used. These will be replaced by NOP on single-processor systems. This member is available only for x86.
MaximumAllocationSize
The maximum allocation size, in bytes. This member is obsolete and is used only for debugging purposes.
VirtualMemoryThreshold
The maximum block size that can be allocated from heap segments, in bytes.
ProcessHeapFlags
The process heap flags. For more information, see HeapCreate.
ProcessAffinityMask
The process affinity mask. For more information, see GetProcessAffinityMask. This member is available only for .exe files.
CSDVersion
The service pack version.
DependentLoadFlags
EditList
Reserved for use by the system.
SecurityCookie
A pointer to a cookie that is used by Visual C++ or GS implementation.
SEHandlerTable
The VA of the sorted table of RVAs of each valid, unique handler in the image. This member is available only for x86.
SEHandlerCount
The count of unique handlers in the table. This member is available only for x86.
GuardCFCheckFunctionPointer
GuardCFDispatchFunctionPointer
GuardCFFunctionTable
GuardCFFunctionCount
GuardFlags
CodeIntegrity
GuardAddressTakenIatEntryTable
GuardAddressTakenIatEntryCount
GuardLongJumpTargetTable
GuardLongJumpTargetCount
DynamicValueRelocTable
CHPEMetadataPointer
GuardRFFailureRoutine
GuardRFFailureRoutineFunctionPointer
DynamicValueRelocTableOffset
DynamicValueRelocTableSection
Reserved2
GuardRFVerifyStackPointerFunctionPointer
HotPatchTableOffset
Reserved3
EnclaveConfigurationPointer
VolatileMetadataPointer
GuardEHContinuationTable
GuardEHContinuationCount
GuardXFGCheckFunctionPointer
GuardXFGDispatchFunctionPointer
GuardXFGTableDispatchFunctionPointer
CastGuardOsDeterminedFailureMode
GuardMemcpyFunctionPointer
Remarks
If _WIN64 is defined, then IMAGE_LOAD_CONFIG_DIRECTORY is defined as IMAGE_LOAD_CONFIG_DIRECTORY64. However, if _WIN64 is not defined, then IMAGE_LOAD_CONFIG_DIRECTORY is defined as IMAGE_LOAD_CONFIG_DIRECTORY32.
typedef struct {
DWORD Size;
DWORD TimeDateStamp;
WORD MajorVersion;
WORD MinorVersion;
DWORD GlobalFlagsClear;
DWORD GlobalFlagsSet;
DWORD CriticalSectionDefaultTimeout;
DWORD DeCommitFreeBlockThreshold;
DWORD DeCommitTotalFreeThreshold;
DWORD LockPrefixTable; // VA
DWORD MaximumAllocationSize;
DWORD VirtualMemoryThreshold;
DWORD ProcessHeapFlags;
DWORD ProcessAffinityMask;
WORD CSDVersion;
WORD Reserved1;
DWORD EditList; // VA
DWORD SecurityCookie; // VA
DWORD SEHandlerTable; // VA
DWORD SEHandlerCount;
} IMAGE_LOAD_CONFIG_DIRECTORY32, *PIMAGE_LOAD_CONFIG_DIRECTORY32;
Requirements
Requirement | Value |
---|---|
Minimum supported client | Windows XP [desktop apps only] |
Minimum supported server | Windows Server 2003 [desktop apps only] |
Header | winnt.h (include Windows.h) |