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 を含む)

こちらもご覧ください

IMAGE_INFO_EX

PLOAD_IMAGE_NOTIFY_ROUTINE

PsSetLoadImageNotifyRoutine