IDebugSymbols2::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 er 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 gibt möglicherweise auch Fehlerwerte zurück. Weitere Informationen finden Sie unter Rückgabewerte .
Rückgabecode | BESCHREIBUNG |
---|---|
|
Der durch InstructionOffset, ScopeFrame und ScopeContext identifizierte Bereich entspricht dem alten Bereich. |
|
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 vorherigen Zustand festzulegen, muss ScopeContext bereitgestellt 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 (dbgeng.h einschließen) |