IXCLRDataProcess ::FollowStub2, méthode
Étant donné une adresse qui est un stub CLR (et potentiellement l’état d’un suivi précédent), déterminez l’adresse d’exécution suivante à laquelle vérifier si le stub a été quitté.
REMARQUE : cette méthode n’est disponible que si la révision du processus retournée par IXCLRDataProcess::Request
au moins 7. Pour les révisions de processus inférieures, les appelants doivent utiliser la méthode obsolète IXCLRDataProcess::FollowStub
.
Remarque
Cette API a été conçue à l’origine pour une utilisation interne dans le runtime. Bien qu’elle soit désormais prise en charge pour une utilisation tierce, nous vous recommandons, autant que possible, d’utiliser les API ICorDebug
et ICorProfiler
.
Syntaxe
HRESULT FollowStub(
[in] IXCLRDataTask *task,
[in] ULONG32 inFlags,
[in] CLRDATA_ADDRESS inAddr,
[in] CLRDATA_FOLLOW_STUB_BUFFER *inBuffer,
[out] CLRDATA_ADDRESS *outAddr,
[out] CLRDATA_FOLLOW_STUB_BUFFER *outBuffer,
[out] ULONG32 *outFlags
);
Paramètres
task
[in] Tâche pour laquelle suivre le stub.
inFlags
[in] Ensemble d’indicateurs décrivant comment suivre le stub. Il doit s’agir d’une valeur de l’énumération CLRDataFollowStubInFlag
qui contient actuellement une seule valeur : CLRDATA_FOLLOW_STUB_DEFAULT (0).
inAddr
[in] Adresse du stub à suivre
inBuffer
[in] Mémoire tampon de données opaque utilisée en interne pour maintenir l’état de marche d’une chaîne de stubs. Cette valeur doit être NULL lors de l’appel initial à la FollowStub
méthode.
outAddr
[out] Adresse d’exécution suivante déterminée à partir du stub.
outBuffer
[out] Mémoire tampon de données opaque utilisée en interne pour maintenir l’état de marche d’une chaîne de stubs.
outFlags
[out] Ensemble d’indicateurs décrivant le résultat du stub. Il s’agit d’une valeur de l’énumération CLRDataFollowStubOutFlag
. Si la valeur est CLRDATA_FOLLOW_STUB_INTERMEDIATE
(0), le résultat est une étape intermédiaire en suivant le stub et l’appelant peut appeler à nouveau FollowStub. Si la valeur est CLRDATA_FOLLOW_STUB_EXIT
(1), il s’agit de la fin de la chaîne stub et de outAddr
l’adresse d’exécution à la fin de la chaîne.
Notes
Une adresse donnée peut être déterminée comme un stub ou non via l’utilisation de la IXCLRDataProcess::GetAddressType
méthode retournant un type de CLRDATA_ADDRESS_RUNTIME_MANAGED_STUB
ou CLRDATA_ADDRESS_RUNTIME_UNMANAGED_STUB
.
La méthode fournie fait partie de l’interface IXCLRDataProcess
et correspond au 48e emplacement de la table de méthode virtuelle.
Spécifications
Plateformes : Consultez Configuration requise. En-tête : aucun Bibliothèque : aucune Versions du .NET Framework : disponible depuis la version 4.7