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
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 の定数の 1 つです#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 マクロ ( ミニポート.h) を使用して、IMAGE_INFO_EX構造体のベース アドレスを取得できます。
要件
要件 | 値 |
---|---|
Header | ntddk.h (Ntddk.h を含む) |