用戶端物件和引擎
EngExtCpp 擴充功能會透過用戶端對象與 調試程式引擎 互動。 用戶端物件的介面指標可透過 ExtExtension 基類的成員,供擴充功能使用。 下列成員提供第一版引擎 API 介面的存取權。
引擎 API 介面 | ExtExtension 成員 |
---|---|
m_Advanced |
|
m_Client |
|
m_Control |
|
m_Data |
|
m_Registers |
|
m_Symbols |
|
m_System |
下列成員提供更新版本的引擎 API 介面存取權。 調試程式引擎的所有版本都可能無法使用這些介面。 如果無法使用,則任何使用這些嘗試都會導致擲回例外狀況。
引擎 API 介面 | ExtExtension 成員 |
---|---|
IDebugAdvanced2 |
m_Advanced2 |
IDebugAdvanced3 |
m_Advanced3 |
IDebugClient2 |
m_Client2 |
IDebugClient3 |
m_Client3 |
IDebugClient4 |
m_Client4 |
IDebugClient5 |
m_Client5 |
IDebugControl2 |
m_Control2 |
IDebugControl3 |
m_Control3 |
IDebugControl4 |
m_Control4 |
IDebugData2 |
m_Data2 |
IDebugData3 |
m_Data3 |
IDebugData4 |
m_Data4 |
IDebugRegisters2 |
m_Registers2 |
IDebugSymbols2 |
m_Symbols2 |
IDebugSymbols3 |
m_Symbols3 |
IDebugSystemObjects2 |
m_System2 |
IDebugSystemObjects3 |
m_System3 |
IDebugSystemObjects4 |
m_System4 |
這些數據表中的成員會在每次擴充連結庫用來執行擴充命令或格式化輸出結構時初始化。 一旦工作完成,這些成員就會未初始化。 因此,延伸模組不應該快取這些成員的值,而且應該直接使用 ExtExtension 成員。
延伸模組連結庫也可以使用 IDebugClient::CreateClient 方法或 DebugCreate 或 Debug 函式建立自己的客戶端物件 連線。
如需客戶端物件的概觀,請參閱 Client Objects。