Partager via


ExtExtension ::* fonction de rappel ExtKnownStructMethod (engextcpp.hpp)

La méthode de rappel ExtKnownStructMethod est appelée par le moteur pour mettre en forme un instance d’une structure pour la sortie sur une seule ligne.

Syntaxe

ExtExtension::* ExtKnownStructMethod Extextension::*Extknownstructmethod;

void Extextension::*Extknownstructmethod(
  [in] PCSTR TypeName,
  [in] ULONG Flags,
  [in] ULONG64 Offset
)
{...}

Paramètres

[in] TypeName

Spécifie le nom du type de la structure pointée par Offset. Il s’agit du même champ TypeName de la structure ExtKnownStruct utilisée pour inscrire cette méthode de rappel.

[in] Flags

Spécifie des indicateurs de bits qui indiquent comment la sortie doit être mise en forme. Actuellement, cette valeur est définie sur DEBUG_KNOWN_STRUCT_GET_SINGLE_LINE_OUTPUT, ce qui indique que la sortie doit être mise en forme pour la sortie sur une seule ligne.

[in] Offset

Spécifie l’emplacement dans la mémoire de la cible de la instance de la structure à mettre en forme pour la sortie.

Valeur de retour

None

Remarques

Le moteur du débogueur s’attend à ce que la sortie soit mise en forme pour l’impression sur une seule ligne. Il ne s’attend donc pas à ce que la structure mise en forme ait des sauts de ligne.

La sortie mise en forme de cette méthode doit être placée dans la mémoire tampon m_AppendBuffer, un membre d’ExtExtension.

Les instances de cette méthode de rappel sont inscrites auprès du moteur à l’aide d’un instance de la structure ExtKnownStruct qui est placée dans le tableau m_KnownStructs (membre d’ExtExtension) par la méthode Initialize. La structure ExtKnownStruct spécifie également le nom du type de structure que cette méthode met en forme.

Lorsque le moteur du débogueur appelle une méthode de structure connue, il encapsule l’appel dans un bloc try/except . Cela protège le moteur contre certains types de bogues dans le code de l’extension ; toutefois, étant donné que les appels d’extension sont exécutés dans le même thread que le moteur, ils peuvent toujours provoquer un blocage.

Configuration requise

Condition requise Valeur
Plateforme cible Desktop (Expérience utilisateur)
En-tête engextcpp.hpp (inclure Engextcpp.hpp)

Voir aussi

ExtExtension

ExtKnownStruct

Initialiser