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.
Recupera il valore del registro specificato.
Sintassi
HRESULT get_registerValue(
DWORD index,
DWORD cbData,
DWORD* pcbData,
BYTE* pbData
);
Parametri
index
[in] Valore dell'enumerazione CV_HREG_e che specifica il registro da cui ottenere il valore. Questo valore di parametro è destinato principalmente ai registri SVE ARM64.
cbData
[in] Dimensioni, in byte, del buffer a pbDatacui punta . Può essere 0 quando pbData è nullptr.
pcbData
[out] Riceve le dimensioni, in byte, del valore del registro. Quando pbData è nullptr e cbData è 0, pcbData è impostato sulle dimensioni necessarie per il valore di registro.
pbData
[out, facoltativo] Buffer allocato dal chiamante che riceve il valore del registro. Può essere nullptr eseguire una query solo sulle dimensioni richieste.
Valore restituito
Se ha esito positivo, restituisce S_OK; in caso contrario, restituisce un codice di errore.
Osservazioni:
È possibile passare pbData = nullptr con cbData = 0 per eseguire una query solo sulle dimensioni necessarie del valore del registro. Il metodo imposta pcbData sul numero di byte necessari. Allocare un buffer di tale dimensione e chiamare di nuovo per recuperare il valore.
Le dimensioni dei registri possono variare tra le architetture della CPU. Questo metodo supporta registri di dimensioni variabili, inclusi registri vettoriali di grandi dimensioni, ad esempio ARM64 SVE.
Per i registri a 64 bit o meno (ad esempio, 1-8 byte), usare get_registerValue e put_registerValue in IDiaStackWalkHelper.