DEBUG_ADDRESS
Applies to: Visual Studio Visual Studio for Mac
Note
This article applies to Visual Studio 2017. If you're looking for the latest Visual Studio documentation, see Visual Studio documentation. We recommend upgrading to the latest version of Visual Studio. Download it here
This structure represents an address.
Syntax
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;
}
Members
ulAppDomainID
The process ID.
guidModule
The GUID of the module that contains this address.
tokClass
The token identifying the class or type of this address.
Note
This value is specific to a symbol provider and therefore has no general meaning other than as an identifier for a class type.
addr
A DEBUG_ADDRESS_UNION structure, which contains a union of structures that describe the individual address types. The value addr
.dwKind
comes from the ADDRESS_KIND enumeration, which explains how to interpret the union.
Remarks
This structure is passed to the GetAddress method to be filled in.
Warning [C++ only]
If addr.dwKind
is ADDRESS_KIND_METADATA_LOCAL
and if addr.addr.addrLocal.pLocal
is not a null value, then you must call Release
on the token pointer:
if (addr.dwKind == ADDRESS_KIND_METADATA_LOCAL && addr.addr.addrLocal.pLocal != NULL)
{
addr.addr.addrLocal.pLocal->Release();
}
Requirements
Header: sh.h
Namespace: Microsoft.VisualStudio.Debugger.Interop
Assembly: Microsoft.VisualStudio.Debugger.Interop.dll