Método IModelObject::GetLocation (dbgmodel.h)
El método GetLocation devolverá la ubicación del objeto nativo. Aunque esta ubicación suele ser una dirección virtual dentro del espacio de direcciones del destino de depuración, no es necesariamente así. La ubicación devuelta por este método es una ubicación abstracta que puede ser una dirección virtual, puede indicar la ubicación dentro de un registro o subscribido, o puede indicar algún otro espacio de direcciones arbitrario definido por el host de depuración. Si el campo HostDefined del objeto Location resultante es 0, indica que la ubicación es realmente una dirección virtual. Dicha dirección virtual se puede recuperar examinando el campo Desplazamiento de la ubicación resultante. Cualquier valor distinto de cero del campo HostDefined indica un espacio de direcciones alternativo donde el campo Offset es el desplazamiento dentro de ese espacio de direcciones. El significado exacto de los valores no cero de HostDefined aquí son privados para el host de depuración.
Si el IModelObject en el que se llama a este método no es una construcción nativa con una ubicación en algún espacio de direcciones abstracto del destino de depuración, este método devolverá E_FAIL.
Sintaxis
HRESULT GetLocation(
Location *location
);
Parámetros
location
La ubicación abstracta del objeto nativo representado por este puntero se devolverá aquí.
Valor devuelto
Este método devuelve HRESULT que indica éxito o error.
Comentarios
Ejemplo de código
En este ejemplo, la estructura Location define la ubicación de un objeto .
ComPtr<IModelObject> spObject; /* get a native object */
Location loc;
if (SUCCEEDED(spObject->GetLocation(&loc)))
{
if (loc.IsVirtualAddress()) /* or loc.HostDefined == 0 */
{
// The object is in memory at an address specified by Offset
ULONG64 address = loc.Offset;
}
else
{
// The object is in some abstract "address space" (e.g.: it's enregistered).
// Arithmetic can still be used on the 'Offset' field in order to access
// sub-objects within the abstract "address space"
}
}
Requisitos
Requisito | Valor |
---|---|
Header | dbgmodel.h |