Partager via


Classe ExtExtension (engextcpp.hpp)

La classe ExtExtension est la classe de base de la classe C++ qui représente la bibliothèque d’extensions EngExtCpp.

La classe ExtExtension comprend les méthodes suivantes, qui peuvent être utilisées par la sous-classe :

Initialiser

Annuler l’initialisation

OnSessionActive

OnSessionInactive

OnSessionAccessible

OnSessionInaccessible

IsUserMode
IsKernelMode
IsLiveLocalUser
IsMachine32
IsCurMachine32
IsMachine64
IsCurMachine64
Is32On64
CanQueryVirtual
HasFullMemBasic
IsExtensionRemote
AreOutputCallbacksDmlAware
RequireUserMode
RequireKernelMode

GetNumUnnamedArgs

GetUnnamedArgStr

GetUnnamedArgU64

HasUnnamedArg

GetArgStr

GetArgU64

HasArg

HasCharArg

SetUnnamedArg

SetUnnamedArgStrStr

SetUnnamedArgU64

SetArg

SetArgStr

SetArgU64

GetRawArgStr

GetRawArgCopy
Out
Avertir
Err
Verb
Dml
DmlWarn
DmlErr
DmlVerb
DmlCmdLink
DmlCmdExec
RefreshOutputCallbackFlags
WrapLine
OutWrapStr
OutWrapVa
OutWrap
DemandeWrap
AllowWrap
TestWrap
RequestCircleString
CopyCircleString
PrintCircleStringVa
PrintCircleString
SetAppendBuffer
AppendBufferString
AppendStringVa
AppendString
IsAppendStart
SetCallStatus
GetCachedSymbolTypeId
GetCachedFieldOffset
GetCachedFieldOffset
AddCachedSymbolInfo
GetExpr64
GetExprU64
GetExprS64
ThrowCommandHelp
ThrowInterrupt
ThrowOutOfMemory
ThrowContinueSearch
ThrowReloadExtension
ThrowInvalidArg
ThrowRemote
ThrowStatus
ThrowLastError
La classe ExtExtension contient également les champs suivants qui peuvent être utilisés par la sous-classe :
class ExtExtension
{
public:
    USHORT  m_ExtMajorVersion;
    USHORT  m_ExtMinorVersion;
    ULONG  m_ExtInitFlags;
    ExtKnownStruct *  m_KnownStructs;
    ExtProvidedValue *  m_ProvidedValues;
    ExtCheckedPointer<IDebugAdvanced>  m_Advanced;
    ExtCheckedPointer<IDebugClient>  m_Client;
    ExtCheckedPointer<IDebugControl>  m_Control;
    ExtCheckedPointer<IDebugDataSpaces>  m_Data;
    ExtCheckedPointer<IDebugRegisters>  m_Registers;
    ExtCheckedPointer<IDebugSymbols>  m_Symbols;
    ExtCheckedPointer<IDebugSystemObjects>  m_System;
    ExtCheckedPointer<IDebugAdvanced2>  m_Advanced2;
    ExtCheckedPointer<IDebugAdvanced3>  m_Advanced3;
    ExtCheckedPointer<IDebugClient2>  m_Client2;
    ExtCheckedPointer<IDebugClient3>  m_Client3;
    ExtCheckedPointer<IDebugClient4>  m_Client4;
    ExtCheckedPointer<IDebugClient5>  m_Client5;
    ExtCheckedPointer<IDebugControl2>  m_Control2;
    ExtCheckedPointer<IDebugControl3>  m_Control3;
    ExtCheckedPointer<IDebugControl4>  m_Control4;
    ExtCheckedPointer<IDebugDataSpaces2>  m_Data2;
    ExtCheckedPointer<IDebugDataSpaces3>  m_Data3;
    ExtCheckedPointer<IDebugDataSpaces4>  m_Data4;
    ExtCheckedPointer<IDebugRegisters2>  m_Registers2;
    ExtCheckedPointer<IDebugSymbols2>  m_Symbols2;
    ExtCheckedPointer<IDebugSymbols3>  m_Symbols3;
    ExtCheckedPointer<IDebugSystemObjects2>  m_System2;
    ExtCheckedPointer<IDebugSystemObjects3>  m_System3;
    ExtCheckedPointer<IDebugSystemObjects4>  m_System4;
    ULONG  m_OutputWidth;
    ULONG  m_ActualMachine;
    ULONG  m_Machine;
    ULONG  m_PageSize;
    ULONG  m_PtrSize;
    ULONG  m_NumProcessors;
    ULONG64  m_OffsetMask;
    ULONG  m_DebuggeeClass;
    ULONG  m_DebuggeeQual;
    ULONG  m_DumpFormatFlags;
    bool  m_IsRemote;
    bool  m_OutCallbacksDmlAware;
    ULONG  m_OutMask;
    ULONG  m_CurChar;
    ULONG  m_LeftIndent;
    bool  m_AllowWrap;
    bool  m_TestWrap;
    ULONG  m_TestWrapChars;
    PSTR  m_AppendBuffer;
    ULONG  m_AppendBufferChars;
    PSTR  m_AppendAt;
};

Méthodes

La classe ExtExtension possède ces méthodes.

 
ExtExtension ::GetArgStr

La méthode GetArgStr retourne un argument de chaîne nommé à partir de la ligne de commande utilisée pour appeler la commande d’extension actuelle.
ExtExtension ::GetArgU64

La méthode GetArgU64 retourne la valeur d’un argument d’expression nommée à partir de la ligne de commande utilisée pour appeler la commande d’extension actuelle.
ExtExtension ::GetNumUnnamedArgs

La méthode GetNumUnnamedArgs retourne le nombre d’arguments sans nom dans la ligne de commande utilisée pour appeler la commande d’extension actuelle.
ExtExtension ::GetRawArgStr

La méthode GetRawArgStr retourne une chaîne qui représente les arguments passés à la commande d’extension.
ExtExtension ::GetUnnamedArgStr

La méthode GetUnnamedArgStr retourne un argument de chaîne sans nom de la ligne de commande utilisée pour appeler la commande d’extension actuelle.
ExtExtension ::GetUnnamedArgU64

La méthode GetUnnamedArgU64 retourne la valeur d’un argument d’expression sans nom à partir de la ligne de commande utilisée pour appeler la commande d’extension actuelle.
ExtExtension ::HasArg

La méthode HasArg indique si un argument nommé spécifié est présent dans la ligne de commande utilisée pour appeler la commande d’extension actuelle.
ExtExtension ::HasCharArg

La méthode HasCharArg indique si un argument nommé à caractère unique spécifié est présent dans la ligne de commande utilisée pour appeler la commande d’extension actuelle.
ExtExtension ::HasUnnamedArg

La méthode HasUnnamedArg indique si un argument sans nom spécifié est présent dans la ligne de commande utilisée pour appeler la commande d’extension actuelle.
ExtExtension ::Initialize

La méthode Initialize est appelée par le moteur pour initialiser une bibliothèque d’extension EngExtCpp après son chargement.
ExtExtension ::OnSessionAccessible

La méthode OnSessionAccessible est appelée par le moteur pour informer la bibliothèque d’extensions EngExtCpp lorsque la session de débogage devient accessible.
ExtExtension ::OnSessionActive

La méthode OnSessionActive est appelée par le moteur pour informer la bibliothèque d’extensions EngExtCpp lorsque la session de débogage devient active.
ExtExtension ::OnSessionInaccessible

La méthode OnSessionInaccessible est appelée par le moteur pour informer la bibliothèque d’extensions EngExtCpp lorsque la session de débogage devient inaccessible.
ExtExtension ::OnSessionInactive

La méthode OnSessionInactive est appelée par le moteur pour informer la bibliothèque d’extensions EngExtCpp lorsque la session de débogage devient inactive.
ExtExtension ::SetArg

La méthode SetArg définit un argument nommé pour la commande d’extension actuelle.
ExtExtension ::SetArgStr

La méthode SetArgStr définit un argument de chaîne nommé pour la commande d’expression actuelle.
ExtExtension ::SetArgU64

La méthode SetArgU64 définit un argument d’expression nommée pour la commande expression actuelle.
ExtExtension ::SetUnnamedArg

La méthode SetUnnamedArg définit un argument sans nom pour la commande d’extension actuelle.
ExtExtension ::SetUnnamedArgStr

La méthode SetUnnamedArgStr définit un argument de chaîne sans nom pour la commande d’extension actuelle.
ExtExtension ::SetUnnamedArgU64

La méthode SetUnnamedArgU64 définit la valeur d’un argument d’expression sans nom pour la commande d’extension actuelle.
ExtExtension ::Uninitialize

La méthode Uninitialize est appelée par le moteur pour annuler la initialisation d’une bibliothèque d’extensions EngExtCpp avant son déchargement.

Configuration requise

Condition requise Valeur
Plateforme cible Windows
En-tête engextcpp.hpp