DEBUG_ADDRESS
Эта структура представляет адрес.
typedef struct _tagDEBUG_ADDRESS {
ULONG32 ulAppDomainID;
GUID guidModule;
_mdToken tokClass;
DEBUG_ADDRESS_UNION addr;
} DEBUG_ADDRESS;
public struct DEBUG_ADDRESS {
public uint ulAppDomainID;
public Guid guidModule;
public int tokClass;
public DEBUG_ADDRESS_UNION addr;
}
Термины
ulAppDomainID
Идентификатор процессаguidModule
Идентификатор GUID модуля, содержащего этот адрес.tokClass
Токен, задав класс или тип адреса.Примечание
Это значение поставщику символов и поэтому не имеет смысл смысл как общий, отличный от идентификатора для типа класса.
addr
A DEBUG_ADDRESS_UNION структура, которая содержит объединение структур, которые описывают отдельные типы адреса. Значение addr.dwKind поступает из ADDRESS_KIND перечисление, которое объясняет, как интерпретировать соединение.
Заметки
Эта структура передается IDebugAddress::GetAddress метод, который требуется заполнить.
Предупреждение только [C++]
If addr.dwKind существует ADDRESS_KIND_METADATA_LOCAL и addr.addr.addrLocal.pLocal имеет значение NULL, необходимо вызвать Release указателя токена:
if (addr.dwKind == ADDRESS_KIND_METADATA_LOCAL && addr.addr.addrLocal.pLocal != NULL)
{
addr.addr.addrLocal.pLocal->Release();
}
Требования
Заголовок: sh.h
Пространство имен: Microsoft.VisualStudio.Debugger.Interop
Сборка: Microsoft.VisualStudio.Debugger.Interop.dll