IMAGE_INFO 구조체(ntddk.h)

IMAGE_INFO 구조는 드라이버의 PLOAD_IMAGE_NOTIFY_ROUTINE(로드 이미지 루틴)에서 로드 이미지 정보를 지정하는 데 사용됩니다.

구문

typedef struct _IMAGE_INFO {
  union {
    ULONG Properties;
    struct {
      ULONG ImageAddressingMode : 8;
      ULONG SystemModeImage : 1;
      ULONG ImageMappedToAllPids : 1;
      ULONG ExtendedInfoPresent : 1;
      ULONG MachineTypeMismatch : 1;
      ULONG ImageSignatureLevel : 4;
      ULONG ImageSignatureType : 3;
      ULONG ImagePartialMap : 1;
      ULONG Reserved : 12;
    };
  };
  PVOID  ImageBase;
  ULONG  ImageSelector;
  SIZE_T ImageSize;
  ULONG  ImageSectionNumber;
} IMAGE_INFO, *PIMAGE_INFO;

멤버

Properties

속성이 결합된 구조체 내의 모든 비트 값을 나타냅니다.

ImageAddressingMode

항상 IMAGE_ADDRESSING_MODE_32BIT.

SystemModeImage

드라이버와 같이 새로 로드된 커널 모드 구성 요소의 경우 1로 설정하거나 사용자 공간에 매핑된 이미지의 경우 0으로 설정합니다.

ImageMappedToAllPids

항상 0으로 설정됩니다.

ExtendedInfoPresent

ExtendedInfoPresent 플래그가 설정된 경우 IMAGE_INFO IMAGE_INFO_EX 일부입니다. Windows Vista에 추가되었습니다.

MachineTypeMismatch

항상 0으로 설정됩니다. Windows 8/Windows Server 2012 추가되었습니다.

ImageSignatureLevel

코드 무결성이 이미지에 레이블을 지정한 서명 수준입니다. 이 값은 ntddk.h#define SE_SIGNING_LEVEL_* 상수 중 하나입니다. Windows 8.1/Windows Server 2012 R2에 추가되었습니다.

ImageSignatureType

코드 무결성이 이미지에 레이블을 지정한 서명 형식입니다. 이 값은 ntddk.h에 정의된 SE_IMAGE_SIGNATURE_TYPE 열거형 값입니다. Windows 8.1/Windows Server 2012 R2에 추가되었습니다.

ImagePartialMap

에 대해 호출된 이미지 매핑 보기가 전체 이미지를 매핑하지 않는 부분 보기인 경우 이 값은 0이 아닙니다. 뷰가 전체 이미지를 매핑하는 경우 0입니다. Windows 10/Windows Server 2016 추가되었습니다.

Reserved

항상 0으로 설정됩니다.

ImageBase

를 이미지의 가상 기본 주소로 설정합니다.

ImageSelector

항상 0으로 설정됩니다.

ImageSize

이미지의 가상 크기(바이트)로 설정합니다.

ImageSectionNumber

항상 0으로 설정됩니다.

설명

ExtendedInfoPresent 플래그가 설정된 경우 IMAGE_INFO 구조는 이미지 정보 구조의 더 크고 확장된 버전인 IMAGE_INFO_EX 일부입니다. 이 경우 로드 이미지 알림 루틴은 CONTAINING_RECORD 매크로(miniport.h)를 사용하여 IMAGE_INFO_EX 구조체의 기본 주소를 가져올 수 있습니다.

요구 사항

요구 사항
헤더 ntddk.h(Ntddk.h 포함)

추가 정보

IMAGE_INFO_EX

PLOAD_IMAGE_NOTIFY_ROUTINE

PsSetLoadImageNotifyRoutine