PDEBUG_EXTENSION_CALL回呼函式 (dbgeng.h)
引擎會呼叫類型 PDEBUG_EXTENSION_CALL 的回呼函式,以執行 擴充功能命令。 只要函式不包含大寫字母,就可以為這些函式提供任何您想要的名稱。
語法
PDEBUG_EXTENSION_CALL PdebugExtensionCall;
HRESULT PdebugExtensionCall(
[in] PDEBUG_CLIENT Client,
[in, optional] PCSTR Args
)
{...}
參數
[in] Client
指定客戶端的介面指標。 這可用來與引擎互動。 一般而言,這是發出擴充功能命令的用戶端。
[in, optional] Args
指定傳遞至擴充命令的自變數。 特別是,如果從命令行呼叫擴充功能命令, Args 會包含命令行的其餘部分。 它可以是 NULL 或空白。
傳回值
傳回碼 | 描述 |
---|---|
|
函式成功。 |
|
表示函式無法處理 命令,或是其他擴充 DLL 中相同命令的其他實作也應該執行。 引擎應該繼續搜尋其他擴充 DLL,以取得另一個函式來處理命令。 例如,這可用來讓每個函式傳回CONTINUE_SEARCH時執行所有說明函式。 |
引擎會忽略所有其他傳回值。
備註
函式的名稱會變成擴充命令的名稱。 執行擴充功能命令時,引擎會依序搜尋每個載入的延伸模組 DLL,尋找與命令同名的導出函式。 例如,執行 命令 !stack 時,引擎會在每個載入的擴充 DLL 中尋找名為 stack 的導出函式。 如需搜尋擴充 DLL 順序的相關信息,請參閱 使用調試程式擴充功能命令。
延伸模組函式應該使用 用戶端在 Client 中傳遞至它,以便與引擎進行所有互動,除非它有使用另一個用戶端的特定原因。 延伸模組函式在客戶端物件完成之後,不應該維護其指標。
DebugExtensionCall 在 Dbgeng.h 頭檔中稱為 PDEBUG_EXTENSION_CALL 。
規格需求
需求 | 值 |
---|---|
目標平台 | 桌面 |
標頭 | dbgeng.h |