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