Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Načte hodnotu zadaného registru.
Syntaxe
HRESULT get_registerValue(
DWORD index,
DWORD cbData,
DWORD* pcbData,
BYTE* pbData
);
Parametry
index
[v] Hodnota z výčtu CV_HREG_e určující, ze kterého registru se má získat hodnota. Tato hodnota parametru je primárně určená pro registry ARM64 SVE.
cbData
[v] Velikost vyrovnávací paměti, na kterou pbDataodkazuje . Může být 0 , když pbData je nullptr.
pcbData
[ven] Přijme velikost hodnoty registru v bajtech. Pokud pbData je nullptr a cbData je 0, pcbData je nastavena na požadovanou velikost pro hodnotu registru.
pbData
[out, volitelné] Vyrovnávací paměť přidělená volajícím, která obdrží hodnotu registru. Může se dotazovat nullptr pouze na požadovanou velikost.
Návratová hodnota
V případě úspěchu vrátí hodnotu S_OK; v opačném případě vrátí kód chyby.
Poznámky
Dotaz můžete předat pbData = nullptrcbData = 0 pouze požadované velikosti hodnoty registru. Metoda se nastaví pcbData na počet bajtů potřebných. Přidělte vyrovnávací paměť této velikosti a voláním znovu načtěte hodnotu.
Velikosti registrů se můžou lišit mezi architekturami procesoru. Tato metoda podporuje registry s proměnlivou velikostí, včetně rozsáhlých vektorových registrů, jako je ARM64 SVE.
Pro registry 64bitové nebo menší (například 1–8 bajtů) použijte get_registerValue a put_registerValue v IDiaStackWalkHelper.