IDebugRegisters2::GetValues2-Methode (dbgeng.h)

Die GetValues2-Methode ruft den Wert mehrerer Register des Ziels ab.

Syntax

HRESULT GetValues2(
  [in]           ULONG        Source,
  [in]           ULONG        Count,
  [in, optional] PULONG       Indices,
  [in]           ULONG        Start,
  [out]          PDEBUG_VALUE Values
);

Parameter

[in] Source

Gibt die abzufragende Registrierungsquelle an.

Die möglichen Werte sind in der folgenden Tabelle aufgeführt.

Wert Quelle registrieren
DEBUG_REGSRC_DEBUGGEE Rufen Sie Registerinformationen vom Ziel ab.
DEBUG_REGSRC_EXPLICIT Rufen Sie Registrierungsinformationen aus dem aktuellen expliziten Registerkontext ab.
DEBUG_REGSRC_FRAME Rufen Sie Registerinformationen aus dem Registerkontext des aktuellen Bereichs ab.
Hinweis Die Stapelentladung garantiert keine genaue Aktualisierung des Registerkontexts, sodass der Registerkontext des Bereichsrahmens möglicherweise nicht in allen Fällen richtig ist.
 

[in] Count

Gibt die Anzahl von Registern an, deren Werte angefordert werden.

[in, optional] Indices

Gibt ein Array an, das die Indizes der Register enthält, aus denen die Werte abgerufen werden sollen. Die Anzahl der Elemente in diesem Array ist Count. Wenn IndizesNULL ist, wird stattdessen Start verwendet.

[in] Start

Wenn IndizesNULL sind, werden die Register ab diesem Index nacheinander gelesen. Andernfalls wird sie ignoriert.

[out] Values

Empfängt die Werte der Register. Die Anzahl der Elemente, die dieses Array enthält, ist Count. Eine Beschreibung dieses Parametertyps finden Sie unter DEBUG_VALUE .

Rückgabewert

Diese Liste enthält nicht alle möglicherweise auftretenden Fehler. Eine Liste möglicher Fehler finden Sie unter HRESULT-Werte.

Rückgabecode BESCHREIBUNG
S_OK
Die Methode war erfolgreich.
E_INVALIDARG
Der Wert des Indexes eines der Register ist größer als die Anzahl der Register auf dem Zielcomputer. Teilergebnisse könnten erzielt worden sein; diese Register, die nicht gelesen werden konnten, weisen den Typ DEBUG_VALUE_INVALID auf.

Hinweise

Wenn der Rückgabewert nicht S_OK ist, wurden einige register möglicherweise noch gelesen. Wenn auf das Ziel nicht zugegriffen werden kann, ist der Rückgabetyp E_UNEXPECTED und Werte unverändert. Andernfalls enthalten Werte partielle Ergebnisse, und die Register, die nicht gelesen werden konnten, weisen den Typ DEBUG_VALUE_INVALID auf. Mehrdeutigkeiten im Fall des Rückgabewerts E_UNEXPECTED können vermieden werden, indem der Arbeitsspeicher von Values vor dem Aufrufen dieser Methode auf 0 festgelegt wird.

Die GetValues-Methode führt dieselbe Aufgabe wie diese Methode aus, verwendet aber immer das Ziel als Registerquelle.

Eine Übersicht über die IDebugRegisters-Schnittstelle und andere registerbezogene Methoden finden Sie unter Registers.

Anforderungen

Anforderung Wert
Zielplattform Desktop
Kopfzeile dbgeng.h (einschließlich DbgEng.h)

Weitere Informationen

Getvalue

GetValues

IDebugRegisters2