ImageRvaToVa 関数 (dbghelp.h)
ファイルとしてマップされたファイルのイメージ ヘッダー内で相対仮想アドレス (RVA) を検索し、ファイル内の対応するバイトの仮想アドレスを返します。
構文
PVOID IMAGEAPI ImageRvaToVa(
[in] PIMAGE_NT_HEADERS NtHeaders,
[in] PVOID Base,
[in] ULONG Rva,
[in, optional] PIMAGE_SECTION_HEADER *LastRvaSection
);
パラメーター
[in] NtHeaders
IMAGE_NT_HEADERS構造体へのポインター。 この構造体は、 ImageNtHeader 関数を呼び出すことによって取得できます。
[in] Base
MapViewOfFile 関数の呼び出しによってメモリにマップされるイメージのベース アドレス。
[in] Rva
配置する相対仮想アドレス。
[in, optional] LastRvaSection
最後の RVA セクションを指定する IMAGE_SECTION_HEADER 構造体へのポインター。 これは省略可能なパラメーターです。 指定すると、RVA を VA に変換するために指定したイメージに使用される最後のセクション値を含む変数を指します。
戻り値
関数が成功した場合、戻り値はマップされたファイル内の仮想アドレスです。
関数が失敗した場合は、返される値は NULL です。 拡張エラー情報を取得するには、 GetLastError を呼び出します。
注釈
ImageRvaToVa 関数は、ファイルとしてマップされたファイルのイメージ ヘッダー内で RVA を検索し、ファイル内の対応するバイトの仮想アドレスを返します。
この関数など、すべての DbgHelp 関数はシングル スレッドです。 そのため、複数のスレッドからこの関数を呼び出すと、予期しない動作やメモリ破損が発生する可能性があります。 これを回避するには、複数のスレッドからのすべての同時呼び出しをこの関数に同期する必要があります。
要件
要件 | 値 |
---|---|
対象プラットフォーム | Windows |
ヘッダー | dbghelp.h |
Library | Dbghelp.lib |
[DLL] | Dbghelp.dll |
再頒布可能パッケージ | DbgHelp.dll 5.1 以降 |