ICorDebugStepper
Mise à jour : novembre 2007
Représente dans l'exécution du code une étape qui est effectuée par un débogueur, et qui sert d'identificateur entre l'émission et l'achèvement d'une commande tout en offrant un moyen d'annuler une étape.
interface ICorDebugStepper : IUnknown {
HRESULT Deactivate ();
HRESULT IsActive (
[out] BOOL *pbActive
);
HRESULT SetInterceptMask (
[in] CorDebugIntercept mask
);
HRESULT SetRangeIL (
[in] BOOL bIL
);
HRESULT SetUnmappedStopMask (
[in] CorDebugUnmappedStop mask
);
HRESULT Step (
[in] BOOL bStepIn
);
HRESULT StepOut ();
HRESULT StepRange (
[in] BOOL bStepIn,
[in, size_is(cRangeCount)] COR_DEBUG_STEP_RANGE ranges[],
[in] ULONG32 cRangeCount
);
};
Méthodes
Méthode |
Description |
---|---|
Entraîne cet ICorDebugStepper à annuler la dernière commande d'étape reçue. |
|
Obtient une valeur qui indique si cet ICorDebugStepper exécute actuellement une étape. |
|
Définit une valeur CorDebugIntercept qui spécifie les types de code qui sont exécutés pas à pas. |
|
Définit une valeur qui indique si les appels à ICorDebugStepper::StepRange passent des valeurs d'argument qui se rapportent au code natif ou au code MSIL (Microsoft Intermediate Language) de la méthode faisant l'objet d'une exécution pas à pas. |
|
Définit une valeur CorDebugUnmappedStop qui spécifie le type de code non mappé dans lequel l'exécution s'arrêtera. |
|
Entraîne ce ICorDebugStepper à exécuter pas à pas son thread conteneur, et éventuellement à poursuivre l'exécution pas à pas via des fonctions appelées dans le thread. |
|
Fait en sorte que ICorDebugStepper exécute pas à pas son thread conteneur et se termine lorsque le frame en cours retourne le contrôle au frame appelant. |
|
Entraîne ce ICorDebugStepper à une exécution pas à pas à travers son thread conteneur, et à retourner lorsqu'il atteint le code situé au-delà de la dernière des plages spécifiées. |
Notes
L'interface ICorDebugStepper remplit les fonctions suivantes :
Elle joue le rôle d'identificateur entre l'émission et la fin d'une commande d'exécution pas à pas.
Elle propose une interface centrale pour encapsuler toutes les exécutions pas à pas pouvant être effectuées.
Elle offre un moyen d'annuler une opération pas à pas avant terme.
Il peut y avoir plusieurs exécutions pas à pas par thread. Par exemple, un point d'arrêt peut être atteint au cours de l'exécution pas à pas d'une fonction et l'utilisateur peut démarrer une nouvelle opération pas à pas au sein de cette fonction. Il appartient au débogueur de déterminer comment gérer cette situation. Le débogueur peut annuler l'opération pas à pas d'origine ou imbriquer les deux opérations. L'interface ICorDebugStepper prend en charge ces deux possibilités.
Une exécution pas à pas peut migrer entre des threads si le Common Language Runtime (CLR) effectue un appel marshalé entre les threads.
Configuration requise
Plateformes : consultez Configuration requise du .NET Framework.
En-tête : CorDebug.idl
Bibliothèque : CorGuids.lib
Versions du .NET Framework : 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0, 1.1, 1.0