ExtExtension 클래스(engextcpp.hpp)
ExtExtension 클래스는 EngExtCpp 확장 라이브러리를 나타내는 C++ 클래스의 기본 클래스입니다.
ExtExtension 클래스에는 하위 클래스에서 사용할 수 있는 다음 메서드가 포함됩니다.
- IsUserMode
- IsKernelMode
- IsLiveLocalUser
- IsMachine32
- IsCurMachine32
- IsMachine64
- IsCurMachine64
- Is32On64
- CanQueryVirtual
- HasFullMemBasic
- IsExtensionRemote
- AreOutputCallbacksDmlAware
- RequireUserMode
- RequireKernelMode
- GetRawArgCopy
- Out
- 경고
- 오류
- 동사
- 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
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;
};
메서드
ExtExtension 클래스에는 이러한 메서드가 있습니다.
ExtExtension::GetArgStr GetArgStr 메서드는 현재 확장 명령을 호출하는 데 사용되는 명령줄에서 명명된 문자열 인수를 반환합니다. |
ExtExtension::GetArgU64 GetArgU64 메서드는 현재 확장 명령을 호출하는 데 사용되는 명령줄에서 명명된 식 인수의 값을 반환합니다. |
ExtExtension::GetNumUnnamedArgs GetNumUnnamedArgs 메서드는 현재 확장 명령을 호출하는 데 사용되는 명령줄에서 명명되지 않은 인수 수를 반환합니다. |
ExtExtension::GetRawArgStr GetRawArgStr 메서드는 확장 명령에 전달된 인수를 나타내는 문자열을 반환합니다. |
ExtExtension::GetUnnamedArgStr GetUnnamedArgStr 메서드는 현재 확장 명령을 호출하는 데 사용되는 명령줄에서 명명되지 않은 문자열 인수를 반환합니다. |
ExtExtension::GetUnnamedArgU64 GetUnnamedArgU64 메서드는 현재 확장 명령을 호출하는 데 사용되는 명령줄에서 명명되지 않은 식 인수의 값을 반환합니다. |
ExtExtension::HasArg HasArg 메서드는 지정된 명명된 인수가 현재 확장 명령을 호출하는 데 사용되는 명령줄에 있는지 여부를 나타냅니다. |
ExtExtension::HasCharArg HasCharArg 메서드는 지정된 단일 문자 명명된 인수가 현재 확장 명령을 호출하는 데 사용되는 명령줄에 있는지 여부를 나타냅니다. |
ExtExtension::HasUnnamedArg HasUnnamedArg 메서드는 지정된 명명되지 않은 인수가 현재 확장 명령을 호출하는 데 사용되는 명령줄에 있는지 여부를 나타냅니다. |
ExtExtension::Initialize Initialize 메서드는 엔진에서 호출하여 로드한 후 EngExtCpp 확장 라이브러리를 초기화합니다. |
ExtExtension::OnSessionAccessible OnSessionAccessible 메서드는 디버깅 세션에 액세스할 수 있게 되면 엔진에서 EngExtCpp 확장 라이브러리에 알리기 위해 호출됩니다. |
ExtExtension::OnSessionActive OnSessionActive 메서드는 디버깅 세션이 활성화될 때 EngExtCpp 확장 라이브러리에 알리기 위해 엔진에서 호출됩니다. |
ExtExtension::OnSessionInaccessible 디버깅 세션에 액세스할 수 없게 되면 엔진에서 OnSessionInaccessible 메서드를 호출하여 EngExtCpp 확장 라이브러리에 알립니다. |
ExtExtension::OnSessionInactive 디버깅 세션이 비활성 상태가 되면 엔진에서 OnSessionInactive 메서드를 호출하여 EngExtCpp 확장 라이브러리에 알립니다. |
ExtExtension::SetArg SetArg 메서드는 현재 확장 명령에 대해 명명된 인수를 설정합니다. |
ExtExtension::SetArgStr SetArgStr 메서드는 현재 식 명령에 대해 명명된 문자열 인수를 설정합니다. |
ExtExtension::SetArgU64 SetArgU64 메서드는 현재 식 명령에 대해 명명된 식 인수를 설정합니다. |
ExtExtension::SetUnnamedArg SetUnnamedArg 메서드는 현재 확장 명령에 대한 명명되지 않은 인수를 설정합니다. |
ExtExtension::SetUnnamedArgStr SetUnnamedArgStr 메서드는 현재 확장 명령에 대한 명명되지 않은 문자열 인수를 설정합니다. |
ExtExtension::SetUnnamedArgU64 SetUnnamedArgU64 메서드는 현재 확장 명령에 대한 명명되지 않은 식 인수의 값을 설정합니다. |
ExtExtension::Uninitialize Uninitialize 메서드는 엔진이 언로드되기 전에 EngExtCpp 확장 라이브러리를 초기화하기 위해 호출됩니다. |
요구 사항
요구 사항 | 값 |
---|---|
대상 플랫폼 | Windows |
헤더 | engextcpp.hpp |