Condividi tramite


Metodo IDebugHost::GetCurrentContext (dbgmodel.h)

Il metodo GetCurrentContext restituisce un'interfaccia che rappresenta lo stato corrente dell'host del debugger. Il significato esatto di questo è lasciato all'host, ma in genere include elementi come la sessione, il processo e lo spazio indirizzi attivo nell'interfaccia utente dell'host di debug. L'oggetto contesto restituito è in gran parte opaco al chiamante, ma è un oggetto importante da passare tra le chiamate all'host di debug. Quando un chiamante è, ad esempio, la lettura della memoria, è importante conoscere il processo e lo spazio di indirizzi da cui viene letta la memoria. Tale nozione viene incapsulata nella nozione dell'oggetto contesto restituito da questo metodo.

A ogni oggetto e simbolo nel modello di dati sono facoltativamente associate informazioni di contesto, ad esempio questa. Spesso è anche tipico che il contesto venga passato da un oggetto a nuovi oggetti creati come proprietà di quelli esistenti. Tali oggetti creati dall'host di debug stesso possono causare l'incorporamento di informazioni di contesto aggiuntive all'interno dell'oggetto restituito, ad esempio la proprietà Stack di un thread può incorporare informazioni sul thread a cui fa riferimento lo stack all'interno del contesto.

Sintassi

HRESULT GetCurrentContext(
  IDebugHostContext **context
);

Parametri

context

Qui viene restituito un oggetto che rappresenta il contesto corrente dell'host.

Valore restituito

Questo metodo restituisce HRESULT che indica l'esito positivo o negativo. Un host che non ha un concetto di informazioni di contesto può restituire E_NOTIMPL qui.

Commenti

Codice di esempio

ComPtr<IDebugHost> spHost; /* get the debug host */

ComPtr<IDebugHostContext> spContext;
if (SUCCEEDED(spHost->GetCurrentContext(&spContext)))
{
    // spContext now contains an opaque object representing the current UI 
    // state of the debugger (e.g.: what session/process/thread the debug UI 
    // is focused on)
}

Requisiti

Requisito Valore
Intestazione dbgmodel.h

Vedi anche

Interfaccia IDebugHost