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的成员。
此回调方法的 实例通过使用 Initialize 方法放置在数组 m_KnownStructs(ExtExtension的成员)的 extKnownStruct 结构的实例向引擎注册。 ExtKnownStruct 结构还指定此方法格式的结构类型的名称。
当调试器引擎调用已知结构方法时,它将调用包装在 try/,但 块除外。 这会保护引擎免受扩展代码中某些类型的 bug;但是,由于扩展调用在引擎所在的同一线程中执行,因此它们仍可能导致它崩溃。
要求
要求 | 价值 |
---|---|
目标平台 | 桌面 |
标头 | engextcpp.hpp (包括 Engextcpp.hpp) |