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
드라이버와 같이 새로 로드된 커널 모드 구성 요소에 대해 하나 또는 사용자 공간에 매핑된 이미지의 경우 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 포함) |