ImageDirectoryEntryToDataEx 関数 (dbghelp.h)

イメージ ヘッダー内のディレクトリ エントリを検索し、ディレクトリ エントリのデータのアドレスを返します。 この関数は、存在するデータのセクション ヘッダー (存在する場合) を返します。

構文

PVOID IMAGEAPI ImageDirectoryEntryToDataEx(
  [in]            PVOID                 Base,
  [in]            BOOLEAN               MappedAsImage,
  [in]            USHORT                DirectoryEntry,
  [out]           PULONG                Size,
  [out, optional] PIMAGE_SECTION_HEADER *FoundHeader
);

パラメーター

[in] Base

イメージまたはデータ ファイルのベース アドレス。

[in] MappedAsImage

フラグが TRUE の場合、ファイルはシステムによってイメージとしてマップされます。 このフラグが FALSE の場合、ファイルは MapViewOfFile 関数によってデータ ファイルとしてマップされます。

[in] DirectoryEntry

配置するディレクトリ エントリ。 値は、次のいずれかの値である必要があります。

意味
IMAGE_DIRECTORY_ENTRY_ARCHITECTURE
7
アーキテクチャ固有のデータ
IMAGE_DIRECTORY_ENTRY_BASERELOC
5
ベース再配置テーブル
IMAGE_DIRECTORY_ENTRY_BOUND_IMPORT
11
バインドされたインポート ディレクトリ
IMAGE_DIRECTORY_ENTRY_COM_DESCRIPTOR
14
COM 記述子テーブル
IMAGE_DIRECTORY_ENTRY_DEBUG
6
デバッグ ディレクトリ
IMAGE_DIRECTORY_ENTRY_DELAY_IMPORT
13
遅延インポート テーブル
IMAGE_DIRECTORY_ENTRY_EXCEPTION
3
例外ディレクトリ
IMAGE_DIRECTORY_ENTRY_EXPORT
0
ディレクトリのエクスポート
IMAGE_DIRECTORY_ENTRY_GLOBALPTR
8
グローバル ポインターの相対仮想アドレス
IMAGE_DIRECTORY_ENTRY_IAT
12
インポート アドレス テーブル
IMAGE_DIRECTORY_ENTRY_IMPORT
1
インポート ディレクトリ
IMAGE_DIRECTORY_ENTRY_LOAD_CONFIG
10
構成ディレクトリを読み込む
IMAGE_DIRECTORY_ENTRY_RESOURCE
2
リソース ディレクトリ
IMAGE_DIRECTORY_ENTRY_SECURITY
4
セキュリティ ディレクトリ
IMAGE_DIRECTORY_ENTRY_TLS
9
スレッド ローカル ストレージ ディレクトリ

[out] Size

配置されているディレクトリ エントリのデータのサイズを受け取る変数へのポインター。

[out, optional] FoundHeader

データを受信する IMAGE_SECTION_HEADER 構造体へのポインター。 セクション ヘッダーが存在しない場合、このパラメーターは NULL です

戻り値

関数が成功した場合、戻り値はディレクトリ エントリのデータへのポインターです。

関数が失敗した場合は、返される値は NULL です。 拡張エラー情報を取得するには、 GetLastError を呼び出します。

この関数など、すべての DbgHelp 関数はシングル スレッドです。 そのため、複数のスレッドからこの関数を呼び出すと、予期しない動作やメモリ破損が発生する可能性があります。 これを回避するには、複数のスレッドからのすべての同時呼び出しをこの関数に同期する必要があります。

要件

要件
対象プラットフォーム Windows
ヘッダー dbghelp.h
Library Dbghelp.lib
[DLL] Dbghelp.dll
再頒布可能パッケージ DbgHelp.dll 5.1 以降

こちらもご覧ください

DbgHelp 関数

IMAGE_SECTION_HEADER

MapViewOfFile