Поделиться через


структура IMAGE_LOAD_CONFIG_DIRECTORY64 (winnt.h)

Содержит данные конфигурации загрузки образа.

Синтаксис

typedef struct _IMAGE_LOAD_CONFIG_DIRECTORY64 {
  DWORD                            Size;
  DWORD                            TimeDateStamp;
  WORD                             MajorVersion;
  WORD                             MinorVersion;
  DWORD                            GlobalFlagsClear;
  DWORD                            GlobalFlagsSet;
  DWORD                            CriticalSectionDefaultTimeout;
  ULONGLONG                        DeCommitFreeBlockThreshold;
  ULONGLONG                        DeCommitTotalFreeThreshold;
  ULONGLONG                        LockPrefixTable;
  ULONGLONG                        MaximumAllocationSize;
  ULONGLONG                        VirtualMemoryThreshold;
  ULONGLONG                        ProcessAffinityMask;
  DWORD                            ProcessHeapFlags;
  WORD                             CSDVersion;
  WORD                             DependentLoadFlags;
  ULONGLONG                        EditList;
  ULONGLONG                        SecurityCookie;
  ULONGLONG                        SEHandlerTable;
  ULONGLONG                        SEHandlerCount;
  ULONGLONG                        GuardCFCheckFunctionPointer;
  ULONGLONG                        GuardCFDispatchFunctionPointer;
  ULONGLONG                        GuardCFFunctionTable;
  ULONGLONG                        GuardCFFunctionCount;
  DWORD                            GuardFlags;
  IMAGE_LOAD_CONFIG_CODE_INTEGRITY CodeIntegrity;
  ULONGLONG                        GuardAddressTakenIatEntryTable;
  ULONGLONG                        GuardAddressTakenIatEntryCount;
  ULONGLONG                        GuardLongJumpTargetTable;
  ULONGLONG                        GuardLongJumpTargetCount;
  ULONGLONG                        DynamicValueRelocTable;
  ULONGLONG                        CHPEMetadataPointer;
  ULONGLONG                        GuardRFFailureRoutine;
  ULONGLONG                        GuardRFFailureRoutineFunctionPointer;
  DWORD                            DynamicValueRelocTableOffset;
  WORD                             DynamicValueRelocTableSection;
  WORD                             Reserved2;
  ULONGLONG                        GuardRFVerifyStackPointerFunctionPointer;
  DWORD                            HotPatchTableOffset;
  DWORD                            Reserved3;
  ULONGLONG                        EnclaveConfigurationPointer;
  ULONGLONG                        VolatileMetadataPointer;
  ULONGLONG                        GuardEHContinuationTable;
  ULONGLONG                        GuardEHContinuationCount;
  ULONGLONG                        GuardXFGCheckFunctionPointer;
  ULONGLONG                        GuardXFGDispatchFunctionPointer;
  ULONGLONG                        GuardXFGTableDispatchFunctionPointer;
  ULONGLONG                        CastGuardOsDeterminedFailureMode;
  ULONGLONG                        GuardMemcpyFunctionPointer;
} IMAGE_LOAD_CONFIG_DIRECTORY64, *PIMAGE_LOAD_CONFIG_DIRECTORY64;

Члены

Size

Размер структуры. Для Windows XP размер должен быть указан как 64 для образов x86.

TimeDateStamp

Значение метки даты и времени. Значение представлено в количестве секунд, прошедших с полуночи (00:00:00), 1 января 1970 года, универсального скоординированного времени, в соответствии с системными часами. Метку времени можно распечатать с помощью функции Crt (CRT) ctime.

MajorVersion

Основной номер версии.

MinorVersion

Дополнительный номер версии.

GlobalFlagsClear

Глобальные флаги, управляющие поведением системы. Дополнительные сведения см. в разделе Gflags.exe.

GlobalFlagsSet

Глобальные флаги, управляющие поведением системы. Дополнительные сведения см. в разделе Gflags.exe.

CriticalSectionDefaultTimeout

Значение времени ожидания критического раздела по умолчанию.

DeCommitFreeBlockThreshold

Размер минимального блока, который должен быть освобожден до освобождения (отмены фиксации), в байтах. Это значение является рекомендацией.

DeCommitTotalFreeThreshold

Минимальный общий объем памяти, который должен быть освобожден в куче процесса перед освобождением (отменой фиксации), в байтах. Это значение является рекомендацией.

LockPrefixTable

Va (VA) списка адресов, где используется префикс LOCK. Они будут заменены NOP в однопроцессорных системах. Этот элемент доступен только для x86.

MaximumAllocationSize

Максимальный размер выделения в байтах. Этот элемент устарел и используется только для отладки.

VirtualMemoryThreshold

Максимальный размер блока, который можно выделить из сегментов кучи, в байтах.

ProcessAffinityMask

Маска сходства процессов. Дополнительные сведения см. в разделе GetProcessAffinityMask. Этот элемент доступен только для .exe файлов.

ProcessHeapFlags

Флаги кучи процесса. Дополнительные сведения см. в разделе HeapCreate.

CSDVersion

Версия пакета обновления.

DependentLoadFlags

Флаги загрузки по умолчанию, используемые, когда операционная система разрешает статически связанные импорты модуля. Дополнительные сведения см. в разделе LoadLibraryEx.

EditList

Зарезервировано для использования системой.

SecurityCookie

Указатель на файл cookie, используемый реализацией Visual C++ или GS.

SEHandlerTable

Va of the sorted table of RVAs of each valid, unique handler in the image. Этот элемент доступен только для 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    DependentLoadFlags;
    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