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
Écriture d’un plug-in d’extension d’analyse pour étendre !analyser