Standortstruktur (dbgmodel.h)
Definiert den Speicherort für ein -Objekt. Diese spezielle Variante von Location ist die C-COM-Zugriffsstruktur.
Beachten Sie, dass ein Standort nur in Verbindung mit einem Hostkontext Bedeutung hat. Es handelt sich um einen Ort innerhalb eines Kontexts. Beim Ausführen eines Vorgangs für den Speicherort (Lesen von Bytes, Schreiben von Bytes usw.) muss ein gültiger Hostkontext angegeben werden.
Syntax
struct Location {
ULONG64 HostDefined;
ULONG64 Offset;
void Location();
void Location(
ULONG64 virtualAddress
);
void Location(
const Location & src
);
Location & operator=(
const Location & src
);
Location & operator=(
ULONG64 virtualAddress
);
bool operator==(
const Location & rhs
);
bool operator!=(
const Location & rhs
);
Location & operator+=(
LONG64 offset
);
Location & operator-=(
LONG64 offset
);
Location operator+(
LONG64 offset
);
Location operator-(
LONG64 offset
);
ULONG64 GetOffset();
bool IsVirtualAddress();
};
Member
HostDefined
Das Feld HostDefined weist zwei Zustände auf, die auf api-Ebene "Nicht undurchsichtig" sind.
0: Gibt an, dass der Offset ein Zeiger auf den virtuellen Adressraum des Ziels ist.
Ungleich Null: Der definierte Wert ist für den Host proprietär. Clients können den Offset weitergeben und ändern. Sie können den Wert nicht rechtlich ändern. Dies kann durch die IsVirtualAddress()-Methode bestimmt werden, wenn diese Struktur aus C++-Code erstellt wird.
Offset
Der Offset des Speicherorts in den durch den Hostkontext und das Feld HostDefined dieser Struktur definierten Adressraum. Wenn das Feld HostDefined null ist, ist dies die virtuelle Adresse des Standorts. Wenn das Feld HostDefined ungleich 0 ist, ist dies der Offset in einen anderen Adressraum. Sie kann beispielsweise angeben, wo sich ein bestimmtes Feld einer registrierten Struktur innerhalb des enthaltenden Registers befindet.
Kopieren erstellt einen Speicherort.
Der Standardwert erstellt einen äquivalenten nullptr.
void Location( ULONG64 virtualAddress)
Erstellt einen Speicherort aus einem Offset in den virtuellen Adressraum des Ziels.
void Location( const Location & src)
Kopieren erstellt einen Speicherort.
Location & operator=( const Location & src)
Der Kopierzuweisungsoperator für die Location-Funktion.
Location & operator=( ULONG64 virtualAddress)
Der Zuweisungsoperator für die Positionsfunktion.
bool operator ==( const Location & rhs)
Äquivalenzoperator für die Location-Funktion.
bool operator!=( const Location & rhs)
Ungleich dem Vergleichsoperator für die Location-Funktion.
Location & Operator+=( LONG64 offset)
Der Additionszuweisungsoperator für die Location-Funktion.
Location & operator-=( LONG64 offset)
Der Subtraktionszuweisungsoperator für die Location-Funktion.
Positionsoperator+( LONG64-Offset)
Der Additionsoperator für die Location-Funktion.
Location-Operator(LONG64 offset)
Subtraktionsoperator für die Location-Funktion.
Gibt den Offset der Position zurück.
Gibt an, ob sich der Standort auf eine virtuelle Adresse bezieht.
Anforderungen
Anforderung | Wert |
---|---|
Header | dbgmodel.h |