Freigeben über


IDebugFailureAnalysis2::SetBuffer-Methode (extsfns.h)

Die SetBuffer--Methode durchsucht ein DebugFailureAnalysis--Objekt für den ersten FA-Eintrag mit einem angegebenen Tag. Wenn ein FA-Eintrag mit dem angegebenen Tag gefunden wird, überschreibt er den Datenblock des FA-Eintrags mit den Bytes in einem angegebenen Puffer. Wenn diese Methode keinen FA-Eintrag mit dem angegebenen Tag findet, erstellt sie einen neuen FA-Eintrag mit diesem Tag und überschreibt den Datenblock des neuen FA-Eintrags mit den Daten im angegebenen Puffer.

Syntax

PFA_ENTRY SetBuffer(
       FA_TAG        Tag,
  [in] FA_ENTRY_TYPE EntryType,
  [in] PVOID         Buf,
  [in] ULONG         Size
);

Parameter

Tag

Ein Wert in der FA_TAG-Aufzählung.

[in] EntryType

Ein Wert in der FA_ENTRY_TYPE-Aufzählung. Dieser Parameter gibt den Datentyp der Daten in Bufan.

[in] Buf

Ein Zeiger auf einen Puffer, der die Bytes enthält, die in den Datenblock des neuen oder vorhandenen FA-Eintragsgeschrieben werden sollen.

[in] Size

Die Größe des Puffers in Bytes, auf den Bufverweist.

Rückgabewert

Wenn diese Methode erfolgreich ist, wird ein Zeiger auf die neue oder vorhandene FA_ENTRY Struktur zurückgegeben. Andernfalls wird NULL-zurückgegeben.

Bemerkungen

Wenn diese Methode einen FA-Eintrag mit dem angegebenen Tag findet, überprüft sie, ob der diesem Tag zugeordnete Datentyp mit dem durch EntryTypeangegebenen Datentyp kompatibel ist. Beispielsweise sind DEBUG_FA_ENTRY_ULONG64, DEBUG_FA_ENTRY_INSTRUCTION_OFFSETund DEBUG_FA_ENTRY_POINTER miteinander kompatibel. Ebenso sind DEBUG_FA_ENTRY_ANSI_STRING und DEBUG_FA_ENTRY_EXTENSION_CMD miteinander kompatibel. Wenn die Datentypen nicht kompatibel sind, gibt diese Methode NULL- zurück und überschreibt den Datenblock des Eintrags nicht.

Wenn diese Methode keinen FA-Eintrag mit dem angegebenen Tag findet, erstellt sie einen neuen FA-Eintrag mit diesem Tag und ordnet das Tag dem durch EntryTypeangegebenen Datentyp zu.

Anforderungen

Anforderung Wert
Zielplattform- Desktop
Header- extsfns.h

Siehe auch

AddBuffer-

GetBuffer-

IDebugFailureAnalysis2

Schreiben eines Analysis Extension Plug-Ins zum Erweitern von !analyze

_EFN_Analyze