IDebugSymbols3::SetScope-Methode (dbgeng.h)
Die SetScope-Methode legt den aktuellen Bereich fest.
Syntax
HRESULT SetScope(
[in] ULONG64 InstructionOffset,
[in, optional] PDEBUG_STACK_FRAME ScopeFrame,
[in, optional] PVOID ScopeContext,
[in] ULONG ScopeContextSize
);
Parameter
[in] InstructionOffset
Gibt den Speicherort im virtuellen Adressraum des Prozesses für die aktuelle Anweisung des Bereichs an. Dies wird nur verwendet, wenn sowohl ScopeFrame als auch ScopeContextNULL sind. andernfalls wird sie ignoriert.
[in, optional] ScopeFrame
Gibt den Stapelrahmen des Bereichs an. Informationen zu dieser Struktur finden Sie unter DEBUG_STACK_FRAME.
[in, optional] ScopeContext
Gibt den Threadkontext des Bereichs an. Der Typ des Threadkontexts ist die CONTEXT-Struktur für den effektiven Prozessor des Ziels. Der Puffer ScopeContext muss groß genug sein, um diese Struktur zu enthalten. Wenn ScopeContextNULL ist, wird stattdessen der aktuelle Registerkontext verwendet.
[in] ScopeContextSize
Gibt die Größe des Puffers ScopeContext an.
Rückgabewert
Diese Methode kann auch Fehlerwerte zurückgeben. Weitere Informationen finden Sie unter Rückgabewerte .
Rückgabecode | BESCHREIBUNG |
---|---|
|
Der durch InstructionOffset, ScopeFrame und ScopeContext identifizierte Bereich ist mit dem alten Bereich identisch. |
|
Der Bereich wurde geändert. |
Hinweise
Wenn nur InstructionOffset bereitgestellt wird, kann der Bereich verwendet werden, um Symbolnamen zu suchen. Die Werte dieser Symbole sind jedoch nicht verfügbar.
Um den Bereich auf einen früheren Zustand festzulegen, muss ScopeContext angegeben werden. Dies ist nicht immer erforderlich (z. B. wenn Sie nur auf die Symbole und nicht auf die Register zugreifen möchten). Um den Bereich auf einen Frame im aktuellen Stapel festzulegen, kann SetScopeFrameByIndex verwendet werden.
Weitere Informationen zu Bereichen finden Sie unter Bereiche und Symbolgruppen.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform | Desktop |
Kopfzeile | dbgeng.h (einschließlich Dbgeng.h) |