Поделиться через


Метод IDebugSymbols::GetNearNameByOffset (dbgeng.h)

Метод GetNearNameByOffset возвращает имя символа, расположенного рядом с указанным расположением.

Синтаксис

HRESULT GetNearNameByOffset(
  [in]            ULONG64  Offset,
  [in]            LONG     Delta,
  [out, optional] PSTR     NameBuffer,
  [in]            ULONG    NameBufferSize,
  [out, optional] PULONG   NameSize,
  [out, optional] PULONG64 Displacement
);

Параметры

[in] Offset

Указывает расположение в виртуальном адресном пространстве целевого объекта символа, из которого определяется нужный символ.

[in] Delta

Указывает связь между нужным символом и символом, расположенным в смещение. Если положительный результат, подсистема вернет символ, который является разностными символами, после символа, расположенного в смещение. Если значение отрицательное, подсистема вернет символ, представляющий собой разностные символы, перед символом, расположенным в смещение.

[out, optional] NameBuffer

Получает имя символа. Имя определяется модулем, которому принадлежит символ (например, mymodule!main). Если NameBuffer имеет значение NULL, эти сведения не возвращаются.

[in] NameBufferSize

Задает размер буфера NameBuffer в символах. Этот размер включает пробел для завершающего символа "\0".

[out, optional] NameSize

Получает размер в символах имени символа. Этот размер включает пробел для завершающего символа "\0". Если параметр NameSize имеет значение NULL, эти сведения не возвращаются.

[out, optional] Displacement

Получает разницу между значением Offset и расположением в целевом адресном пространстве памяти символа. Если перемещение равно NULL, эти сведения не возвращаются.

Возвращаемое значение

Этот метод также может возвращать другие значения ошибок. Дополнительные сведения см. в разделе Возвращаемые значения .

Код возврата Описание
S_OK
Метод выполнен успешно.
S_FALSE
Метод выполнен успешно. Однако буфер не был достаточно велик для хранения имени символа, поэтому он был усечен.
E_NOINTERFACE
Не найден символ, соответствующий спецификациям Offset и Delta .

Комментарии

Увеличивая или уменьшая значение Delta, эти методы можно использовать для итерации символов целевого объекта, начиная с определенного расположения.

Если значение Delta равно нулю, эти методы ведут себя так же, как и GetNameByOffset.

Дополнительные сведения о символах и их именах см. в разделе Символы.

Требования

Требование Значение
Целевая платформа Персональный компьютер
Верхняя часть dbgeng.h (включая Dbgeng.h)

См. также раздел

GetNameByOffset

GetOffsetByName

IDebugSymbols

IDebugSymbols2

IDebugSymbols3