Функция 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
Указатель на структуру IMAGE_SECTION_HEADER , указывающую последний раздел RVA. Этот параметр является необязательным. Если этот параметр указан, он указывает на переменную, содержащую значение последнего раздела, используемое для указанного изображения для преобразования RVA в va.
Возвращаемое значение
Если функция выполняется успешно, возвращаемым значением будет виртуальный адрес в сопоставленном файле.
Если функция завершается сбоем, возвращается значение NULL. Чтобы получить расширенные сведения об ошибке, вызовите Метод GetLastError.
Комментарии
Функция ImageRvaToVa находит RVA в заголовке изображения файла, сопоставленного как файл, и возвращает виртуальный адрес соответствующего байта в файле.
Все функции DbgHelp, такие как эта, являются однопоточными. Таким образом, вызовы из нескольких потоков к этой функции, скорее всего, приведут к непредвиденному поведению или повреждению памяти. Чтобы избежать этого, необходимо синхронизировать все параллельные вызовы из нескольких потоков в эту функцию.
Требования
Требование | Значение |
---|---|
Целевая платформа | Windows |
Header | dbghelp.h |
Библиотека | Dbghelp.lib |
DLL | Dbghelp.dll |
Распространяемые компоненты | DbgHelp.dll 5.1 или более поздней версии |