Partager via


Méthode IDebugFailureAnalysis2 ::SetBuffer (extsfns.h)

La méthode SetBuffer recherche un objet DebugFailureAnalysis pour la première entrée FA qui a une balise spécifiée. S’il trouve une entrée FA avec la balise spécifiée, il remplace le bloc de données de l’entrée FA par les octets d’une mémoire tampon spécifiée. Si cette méthode ne trouve pas d’entrée FA qui a la balise spécifiée, elle crée une nouvelle entrée FA avec cette étiquette et remplace le bloc de données de la nouvelle entrée FA par les données dans la mémoire tampon spécifiée.

Syntaxe

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

Paramètres

Tag

Valeur dans l’énumération FA_TAG .

[in] EntryType

Valeur dans l’énumération FA_ENTRY_TYPE . Ce paramètre spécifie le type de données des données dans Buf.

[in] Buf

Pointeur vers une mémoire tampon qui contient les octets à écrire dans le bloc de données de l’entrée FA nouvelle ou existante.

[in] Size

Taille, en octets, de la mémoire tampon pointée vers Buf.

Valeur retournée

Si cette méthode réussit, elle retourne un pointeur vers la structure de FA_ENTRY nouvelle ou existante. Dans le cas contraire, elle retourne LA VALEUR NULL.

Remarques

Si cette méthode trouve une entrée FA avec la balise spécifiée, elle vérifie si le type de données associé à cette balise est compatible avec le type de données spécifié par EntryType. Par exemple, les DEBUG_FA_ENTRY_ULONG64, les DEBUG_FA_ENTRY_INSTRUCTION_OFFSET et les DEBUG_FA_ENTRY_POINTER sont tous compatibles les uns avec les autres. De même, DEBUG_FA_ENTRY_ANSI_STRING et DEBUG_FA_ENTRY_EXTENSION_CMD sont compatibles les uns avec les autres. Si les types de données ne sont pas compatibles, cette méthode retourne NULL et ne remplace pas le bloc de données de l’entrée.

Si cette méthode ne trouve pas d’entrée FA avec la balise spécifiée, elle crée une nouvelle entrée FA avec cette étiquette et associe la balise au type de données spécifié par EntryType.

Configuration requise

Condition requise Valeur
Plateforme cible Desktop (Expérience utilisateur)
En-tête extsfns.h

Voir aussi

AddBuffer

GetBuffer

IDebugFailureAnalysis2

Écriture d’un plug-in d’extension d’analyse pour étendre !analyser

_EFN_Analyze