Note

Access to this page requires authorization. You can try signing in or .

Access to this page requires authorization. You can try .

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;
 DWORD UmaFunctionPointers;
} 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

UmaFunctionPointers

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)

See also

GetImageConfigInformation

GetProcessAffinityMask

ImageHlp Structures

SetImageConfigInformation


Feedback

Was this page helpful?

Additional resources