Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Un'estensione EngExtCpp interagisce con il motore del debugger tramite un oggetto client. I puntatori di interfaccia all'oggetto client sono disponibili per l'estensione tramite i membri della classe di base ExtExtension . I membri seguenti forniscono l'accesso alla prima versione delle interfacce API del motore.
| Interfaccia API del motore | Membro ExtExtension |
|---|---|
m_Advanced |
|
m_Client |
|
m_Control |
|
m_Data |
|
m_Registers |
|
m_Symbols |
|
m_System |
I membri seguenti forniscono l'accesso alle versioni successive delle interfacce API del motore. Queste interfacce potrebbero non essere disponibili in tutte le versioni del motore del debugger. Se non sono disponibili, qualsiasi tentativo di usarli comporterà la generazione di un'eccezione.
| Interfaccia API del motore | Membro 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 |
I membri di queste tabelle vengono inizializzati ogni volta che la libreria di estensioni viene usata per eseguire un comando di estensione o formattare una struttura per l'output. Una volta completata un'attività, questi membri non vengono inizializzati. Di conseguenza, le estensioni non devono memorizzare nella cache i valori di questi membri e devono usare direttamente i membri ExtExtension .
Una libreria di estensioni può anche creare oggetti client personalizzati usando il metodo IDebugClient::CreateClient o le funzioni DebugCreate o DebugConnect.
Per una panoramica degli oggetti client, vedere Oggetti client.