ICorDebugRegisterSet2::GetRegisters, méthode

Obtient la valeur de chaque registre (pour la plateforme sur laquelle le code est en cours d’exécution) spécifié par le masque de bits donné.

Syntaxe

HRESULT GetRegisters (  
    [in] ULONG32 maskCount,  
    [in, size_is(maskCount)] BYTE mask[],  
    [in] ULONG32 regCount,  
    [out, size_is(regCount)] CORDB_REGISTER regBuffer[]  
);  

Paramètres

maskCount
[in] Taille en octets du tableau mask.

mask
[in] Tableau d’octets, dont chaque bit correspond à un registre. Si le bit est 1, la valeur du registre correspondant est récupérée.

regCount
[in] Nombre de valeurs de registre à récupérer.

regBuffer
[out] Tableau d’objets CORDB_REGISTER, chacun recevant la valeur d’un registre.

Notes

La méthode GetRegisters retourne un tableau de valeurs des registres spécifiés par le masque. Le tableau ne contient pas de valeurs de registres dont le bit de masque n’est pas défini. Ainsi, la taille du tableau regBuffer doit être égale au nombre de 1 dans le masque. Si la valeur de regCount est trop petite pour le nombre de registres indiqué par le masque, les valeurs des registres avec un numéro plus élevé sont tronquées de l’ensemble. Si la valeur de regCount est trop grande, les éléments regBuffer inutilisés ne sont pas modifiés.

Si un registre non disponible est indiqué par le masque, une valeur indéterminée est retournée pour ce registre.

La méthode ICorDebugRegisterSet2::GetRegisters est nécessaire pour les plateformes qui ont plus de 64 registres. Par exemple, IA64 ayant 128 registres à usage général et 128 registres à virgule flottante, vous avez donc besoin de plus de 64 bits dans le masque de bits.

Si vous n’avez pas plus de 64 registres, comme c’est le cas sur des plateformes telles que x86, la méthode GetRegisters traduit simplement les octets du tableau d’octets mask en un ULONG64, puis appelle la méthode ICorDebugRegisterSet::GetRegisters, qui prend le masque ULONG64.

Spécifications

Plateformes : Consultez Configuration requise.

En-tête : CorDebug.idl, CorDebug.h

Bibliothèque : CorGuids.lib

Versions de .NET Framework : Disponible depuis la version 2.0

Voir aussi