ExtExtension::* ExtKnownStructMethod 콜백 함수(engextcpp.hpp)
ExtKnownStructMethod 콜백 메서드는 엔진에서 한 줄에 출력할 구조체의 instance 형식을 지정하기 위해 호출됩니다.
구문
ExtExtension::* ExtKnownStructMethod Extextension::*Extknownstructmethod;
void Extextension::*Extknownstructmethod(
[in] PCSTR TypeName,
[in] ULONG Flags,
[in] ULONG64 Offset
)
{...}
매개 변수
[in] TypeName
Offset이 가리키는 구조체 형식의 이름을 지정합니다. 이 콜백 메서드를 등록하는 데 사용되는 ExtKnownStruct 구조체의 TypeName 필드와 동일합니다.
[in] Flags
출력의 서식을 지정하는 방법을 나타내는 비트 플래그를 지정합니다. 현재 이 값은 DEBUG_KNOWN_STRUCT_GET_SINGLE_LINE_OUTPUT 설정됩니다. 이는 출력이 한 줄의 출력에 맞게 형식이 지정되어야 했음을 나타냅니다.
[in] Offset
출력을 위해 서식을 지정할 구조체의 instance 대상 메모리의 위치를 지정합니다.
반환 값
없음
설명
디버거 엔진은 출력이 한 줄로 인쇄할 수 있도록 형식이 지정되어야 하므로 형식이 지정된 구조체에 줄 바꿈이 있을 것으로 예상하지 않습니다.
이 메서드의 형식이 지정된 출력은 ExtExtension의 멤버인 버퍼 m_AppendBuffer 배치해야 합니다.
이 콜백 메서드의 인스턴스는 Initialize 메서드의 배열 m_KnownStructs(ExtExtension의 멤버)에 배치되는 ExtKnownStruct 구조체의 instance 사용하여 엔진에 등록됩니다. ExtKnownStruct 구조체는 이 메서드 형식의 구조체 형식 이름도 지정합니다.
디버거 엔진이 알려진 구조 메서드를 호출하면 호출을 try/except 블록으로 래핑합니다. 이렇게 하면 확장 코드의 일부 버그 유형으로부터 엔진이 보호됩니다. 하지만 확장 호출은 엔진과 동일한 스레드에서 실행되므로 여전히 작동이 중단될 수 있습니다.
요구 사항
요구 사항 | 값 |
---|---|
대상 플랫폼 | 데스크톱 |
머리글 | engextcpp.hpp(Engextcpp.hpp 포함) |