WdbgExts 扩展 API 概述

每个 WdbgExts 扩展 DLL 导出一个或多个用于实现 扩展命令的函数。 这些函数是根据标准 C 约定命名的,但不允许使用大写字母。

函数名称和扩展命令名称相同,只是扩展命令以感叹号开头 ( ) 。 例如,将Myextension.dll加载到调试器中,然后在“调试器命令”窗口中键入 !stack 时,调试器将在 Myextension.dll 中查找名为 stack 的导出函数。

如果尚未加载Myextension.dll,或者其他扩展 DLL 中存在同名的其他扩展命令,则可以在“调试器命令”窗口中键入 !myextension.stack 以指示扩展 DLL 和该 DLL 中的扩展命令。

每个 WdbgExts 扩展 DLL 还导出许多 回调函数。 加载 DLL 并使用扩展命令时,调试器会调用这些函数。

调试器引擎将在对扩展 DLL 的调用周围放置 一个 try / except 块。 这可以防止引擎在扩展代码中出现某些类型的 bug。 但是,由于扩展调用与引擎在同一线程中执行,因此它们仍可能导致引擎崩溃。