Compartir a través de


Clase ExtExtension (engextcpp.hpp)

La clase ExtExtension es la clase base para la clase de C++ que representa la biblioteca de extensiones EngExtCpp.

La clase ExtExtension incluye los métodos siguientes, que la subclase puede usar:

Inicialización

Uninitialize

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

SetUnnamedArgStr

SetUnnamedArgU64

SetArg

SetArgStr

SetArgU64

GetRawArgStr

GetRawArgCopy
Fuera
Advertir
Err
Verb
Dml
DmlWarn
DmlErr
DmlVerb
DmlCmdLink
DmlCmdExec
RefreshOutputCallbackFlags
WrapLine
OutWrapStr
OutWrapVa
OutWrap
DemandWrap
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 clase ExtExtension también contiene los siguientes campos que puede usar la subclase:
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étodos

La clase ExtExtension tiene estos métodos.

 
ExtExtension::GetArgStr

El método GetArgStr devuelve un argumento de cadena con nombre de la línea de comandos que se usa para invocar el comando de extensión actual.
ExtExtension::GetArgU64

El método GetArgU64 devuelve el valor de un argumento de expresión con nombre de la línea de comandos utilizada para invocar el comando de extensión actual.
ExtExtension::GetNumUnnamedArgs

El método GetNumUnnamedArgs devuelve el número de argumentos sin nombre en la línea de comandos usada para invocar el comando de extensión actual.
ExtExtension::GetRawArgStr

El método GetRawArgStr devuelve una cadena que representa los argumentos pasados al comando de extensión.
ExtExtension::GetUnnamedArgStr

El método GetUnnamedArgStr devuelve un argumento de cadena sin nombre de la línea de comandos utilizada para invocar el comando de extensión actual.
ExtExtension::GetUnnamedArgU64

El método GetUnnamedArgU64 devuelve el valor de un argumento de expresión sin nombre de la línea de comandos utilizada para invocar el comando de extensión actual.
ExtExtension::HasArg

El método HasArg indica si un argumento con nombre especificado está presente en la línea de comandos utilizada para invocar el comando de extensión actual.
ExtExtension::HasCharArg

El método HasCharArg indica si un argumento con nombre de un solo carácter especificado está presente en la línea de comandos utilizada para invocar el comando de extensión actual.
ExtExtension::HasUnnamedArg

El método HasUnnamedArg indica si hay un argumento sin nombre especificado en la línea de comandos utilizada para invocar el comando de extensión actual.
ExtExtension::Initialize

El motor llama al método Initialize para inicializar una biblioteca de extensiones EngExtCpp después de cargarlo.
ExtExtension::OnSessionAccessible

El motor llama al método OnSessionAccessible para informar a la biblioteca de extensiones EngExtCpp cuando se puede acceder a la sesión de depuración.
ExtExtension::OnSessionActive

El motor llama al método OnSessionActive para informar a la biblioteca de extensiones EngExtCpp cuando la sesión de depuración se activa.
ExtExtension::OnSessionInaccessible

El motor llama al método OnSessionInaccessible para informar a la biblioteca de extensiones EngExtCpp cuando la sesión de depuración deja de estar accesible.
ExtExtension::OnSessionInactive

El motor llama al método OnSessionInactive para informar a la biblioteca de extensiones EngExtCpp cuando la sesión de depuración deja de estar inactiva.
ExtExtension::SetArg

El método SetArg establece un argumento con nombre para el comando de extensión actual.
ExtExtension::SetArgStr

El método SetArgStr establece un argumento de cadena con nombre para el comando de expresión actual.
ExtExtension::SetArgU64

El método SetArgU64 establece un argumento de expresión con nombre para el comando de expresión actual.
ExtExtension::SetUnnamedArg

El método SetUnnamedArg establece un argumento sin nombre para el comando de extensión actual.
ExtExtension::SetUnnamedArgStr

El método SetUnnamedArgStr establece un argumento de cadena sin nombre para el comando de extensión actual.
ExtExtension::SetUnnamedArgU64

El método SetUnnamedArgU64 establece el valor de un argumento de expresión sin nombre para el comando de extensión actual.
ExtExtension::Uninitialize

El motor llama al método Uninitialize para anular la inicialización de una biblioteca de extensiones EngExtCpp antes de que se descargue.

Requisitos

Requisito Value
Plataforma de destino Windows
Encabezado engextcpp.hpp