Freigeben über


ExtExtension-Klasse (engextcpp.hpp)

Die ExtExtension-Klasse ist die Basisklasse für die C++-Klasse, die die EngExtCpp-Erweiterungsbibliothek darstellt.

Die ExtExtension-Klasse enthält die folgenden Methoden, die von der Unterklasse verwendet werden können:

Initialisieren

Initialisierung aufheben

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
aus
Warnen
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
Die ExtExtension-Klasse enthält auch die folgenden Felder, die von der Unterklasse verwendet werden können:
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;
};

Methoden

Die ExtExtension-Klasse verfügt über diese Methoden.

 
ExtExtension::GetArgStr

Die GetArgStr-Methode gibt ein benanntes Zeichenfolgenargument aus der Befehlszeile zurück, die zum Aufrufen des aktuellen Erweiterungsbefehls verwendet wird.
ExtExtension::GetArgU64

Die GetArgU64-Methode gibt den Wert eines benannten Ausdrucksarguments aus der Befehlszeile zurück, die zum Aufrufen des aktuellen Erweiterungsbefehls verwendet wird.
ExtExtension::GetNumUnnamedArgs

Die GetNumUnnamedArgs-Methode gibt die Anzahl der unbenannten Argumente in der Befehlszeile zurück, die zum Aufrufen des aktuellen Erweiterungsbefehls verwendet wird.
ExtExtension::GetRawArgStr

Die GetRawArgStr-Methode gibt eine Zeichenfolge zurück, die die An den Erweiterungsbefehl übergebenen Argumente darstellt.
ExtExtension::GetUnnamedArgStr

Die GetUnnamedArgStr-Methode gibt ein unbenannte Zeichenfolgenargument aus der Befehlszeile zurück, die zum Aufrufen des aktuellen Erweiterungsbefehls verwendet wird.
ExtExtension::GetUnnamedArgU64

Die GetUnnamedArgU64-Methode gibt den Wert eines unbenannten Ausdrucksarguments aus der Befehlszeile zurück, die zum Aufrufen des aktuellen Erweiterungsbefehls verwendet wird.
ExtExtension::HasArg

Die HasArg-Methode gibt an, ob ein angegebenes benanntes Argument in der Befehlszeile vorhanden ist, die zum Aufrufen des aktuellen Erweiterungsbefehls verwendet wird.
ExtExtension::HasCharArg

Die HasCharArg-Methode gibt an, ob ein angegebenes ein zeichenweises benanntes Argument in der Befehlszeile vorhanden ist, die zum Aufrufen des aktuellen Erweiterungsbefehls verwendet wird.
ExtExtension::HasUnnamedArg

Die HasUnnamedArg-Methode gibt an, ob ein angegebenes unbenannte Argument in der Befehlszeile vorhanden ist, die zum Aufrufen des aktuellen Erweiterungsbefehls verwendet wird.
ExtExtension::Initialize

Die Initialize-Methode wird von der Engine aufgerufen, um eine EngExtCpp-Erweiterungsbibliothek nach dem Laden zu initialisieren.
ExtExtension::OnSessionAccessible

Die OnSessionAccessible-Methode wird von der Engine aufgerufen, um die EngExtCpp-Erweiterungsbibliothek zu informieren, wenn auf die Debugsitzung zugegriffen werden kann.
ExtExtension::OnSessionActive

Die OnSessionActive-Methode wird von der Engine aufgerufen, um die EngExtCpp-Erweiterungsbibliothek zu informieren, wenn die Debugsitzung aktiv wird.
ExtExtension::OnSessionInaccessible

Die OnSessionInaccessible-Methode wird von der Engine aufgerufen, um die EngExtCpp-Erweiterungsbibliothek zu informieren, wenn der Zugriff auf die Debugsitzung nicht mehr möglich ist.
ExtExtension::OnSessionInactive

Die OnSessionInactive-Methode wird von der Engine aufgerufen, um die EngExtCpp-Erweiterungsbibliothek zu informieren, wenn die Debugsitzung inaktiv wird.
ExtExtension::SetArg

Die SetArg-Methode legt ein benanntes Argument für den aktuellen Erweiterungsbefehl fest.
ExtExtension::SetArgStr

Die SetArgStr-Methode legt ein benanntes Zeichenfolgenargument für den aktuellen Ausdrucksbefehl fest.
ExtExtension::SetArgU64

Die SetArgU64-Methode legt ein benanntes Ausdrucksargument für den aktuellen Ausdrucksbefehl fest.
ExtExtension::SetUnnamedArg

Die SetUnnamedArg-Methode legt ein unbenannte Argument für den aktuellen Erweiterungsbefehl fest.
ExtExtension::SetUnnamedArgStr

Die SetUnnamedArgStr-Methode legt ein unbenannte Zeichenfolgenargument für den aktuellen Erweiterungsbefehl fest.
ExtExtension::SetUnnamedArgU64

Die SetUnnamedArgU64-Methode legt den Wert eines unbenannten Ausdrucksarguments für den aktuellen Erweiterungsbefehl fest.
ExtExtension::Uninitialize

Die Uninitialize-Methode wird von der Engine aufgerufen, um eine EngExtCpp-Erweiterungsbibliothek vor dem Entladen zu initialisieren.

Anforderungen

Anforderung Wert
Zielplattform Windows
Kopfzeile engextcpp.hpp