ExtExtension 클래스(engextcpp.hpp)
ExtExtension 클래스는 EngExtCpp 확장 라이브러리를 나타내는 C++ 클래스의 기본 클래스입니다.
ExtExtension 클래스에는 서브클래스에서 사용할 수 있는 다음 메서드가 포함되어 있습니다.
- isUserMode
- IsKernelMode
- IsLiveLocalUser
- IsMachine32
- IsCurMachine32
- IsMachine64
- IsCurMachine64
- Is32On64
- CanQueryVirtual
- HasFullMemBasic
- IsExtensionRemote
- AreOutputCallbacksDmlAware
- RequireUserMode
- RequireKernelMode
- getRawArgCopy
- Out
- 경고
- Err
- 동사
- 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 메서드는 엔진을 로드한 후 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 메서드는 엔진이 언로드되기 전에 EngExtCpp 확장 라이브러리를 초기화 해제하기 위해 호출됩니다. |
요구 사항
요구 | 값 |
---|---|
대상 플랫폼 | Windows |
헤더 | engextcpp.hpp |