次の方法で共有


WdbgExts 拡張機能 API の概要

各 WdbgExts 拡張 DLL は、拡張コマンドの実装に使用される 1 つ以上の関数をエクスポートします。 これらの関数は、大文字が許可されないことを除き、標準の C 規則に従って名前が付けられます。

拡張コマンドが感嘆符 (!) で始まる点を除き、関数名と拡張コマンド名は同じです。 たとえば、デバッガーにMyextension.dllを読み込み、「デバッガー コマンド」ウィンドウに「!stack」と入力すると、デバッガーは、Myextension.dllで stack という名前のエクスポートされた関数を探します。

Myextension.dllがまだ読み込まれていない場合、または他の拡張 DLL に同じ名前の他の拡張コマンドがある場合は、デバッガー コマンド ウィンドウに「!myextension.stack」と入力して、拡張機能 DLL とその DLL 内の拡張コマンドを示すことができます。

各 WdbgExts 拡張 DLL では、多数のコールバック関数もエクスポートされます。 これらの関数は、DLL が読み込まれ、拡張機能コマンドが使用されるときにデバッガーによって呼び出されます。

デバッガー エンジンは、拡張 DLL の呼び出しの周囲に try / except ブロックを配置します。 これにより、拡張機能コードの一部の種類のバグからエンジンが保護されます。 ただし、拡張機能の呼び出しはエンジンと同じスレッドで実行されるため、エンジンがクラッシュする可能性があります。