ExtExtension::* ExtKnownStructMethod 回调函数 (engextcpp.hpp)
引擎调用 ExtKnownStructMethod 回调方法,以格式化结构的实例,以便在单行上输出。
语法
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
指定要设置输出格式的结构实例的目标内存中的位置。
返回值
无
备注
调试器引擎需要格式化输出以在单行上打印,因此它不希望格式化结构具有任何换行符。
此方法的格式化输出应放置在缓冲区 m_AppendBuffer - - ExtExtension 的成员。
此回调方法的实例通过使用放置在数组中的 ExtKnownStruct 结构的实例向引擎注册,该实例m_KnownStructs (Initialize 方法) ExtExtension 的成员。 ExtKnownStruct 结构还指定此方法格式的结构类型的名称。
当调试器引擎调用已知的结构方法时,它会将调用包装在 try /except 块中。 这可以防止引擎在扩展代码中出现某些类型的 bug;但是,由于扩展调用与引擎在同一线程中执行,因此它们仍可能导致其崩溃。
要求
要求 | 值 |
---|---|
目标平台 | 桌面 |
标头 | engextcpp.hpp (包括 Engextcpp.hpp) |