IMAGE_LOAD_CONFIG_DIRECTORY32 结构 (winnt.h)

包含映像的加载配置数据。

语法

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;

成员

Size

结构的大小。 对于 Windows XP,对于 x86 图像,大小必须指定为 64。

TimeDateStamp

日期和时间戳值。 根据系统时钟,该值以自 1970 年 1 月 1 日世界协调时间 (00:00:00) 午夜以来经过的秒数表示。 可以使用 C 运行时 (CRT) 函数 ctime 打印时间戳。

MajorVersion

主版本号。

MinorVersion

次版本号。

GlobalFlagsClear

用于控制系统行为的全局标志。 有关详细信息,请参阅 Gflags.exe。

GlobalFlagsSet

用于控制系统行为的全局标志。 有关详细信息,请参阅 Gflags.exe。

CriticalSectionDefaultTimeout

关键节默认超时值。

DeCommitFreeBlockThreshold

在释放之前必须释放的最小块的大小, (取消提交的) (以字节为单位)。 此值是公告。

DeCommitTotalFreeThreshold

在释放进程堆之前必须释放的最小总内存的大小, (取消提交的) (以字节为单位)。 此值是公告。

LockPrefixTable

使用 LOCK 前缀的地址列表的 VA。 这些将替换为单处理器系统上的 NOP。 此成员仅适用于 x86。

MaximumAllocationSize

最大分配大小(以字节为单位)。 此成员已过时,仅用于调试目的。

VirtualMemoryThreshold

可从堆段分配的最大块大小(以字节为单位)。

ProcessHeapFlags

进程堆标志。 有关详细信息,请参阅 HeapCreate

ProcessAffinityMask

进程关联掩码。 有关详细信息,请参阅 GetProcessAffinityMask。 此成员仅适用于 .exe 文件。

CSDVersion

Service Pack 版本。

DependentLoadFlags

EditList

保留供系统使用。

SecurityCookie

指向 Visual C++ 或 GS 实现使用的 Cookie 的指针。

SEHandlerTable

图像中每个有效唯一处理程序的已排序表的 VVA。 此成员仅适用于 x86。

SEHandlerCount

表中唯一处理程序的计数。 此成员仅适用于 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

注解

如果定义了 _WIN64 ,则 IMAGE_LOAD_CONFIG_DIRECTORY 定义为 IMAGE_LOAD_CONFIG_DIRECTORY64。 但是,如果未定义 _WIN64 ,则 IMAGE_LOAD_CONFIG_DIRECTORY 定义为 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;

要求

   
最低受支持的客户端 Windows XP [仅限桌面应用]
最低受支持的服务器 Windows Server 2003 [仅限桌面应用]
标头 winnt.h (包括 Windows.h)

另请参阅

GetImageConfigInformation

GetProcessAffinityMask

ImageHlp 结构

SetImageConfigInformation