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) |