Méthode IDebugSymbols2 ::SetScope (dbgeng.h)
La méthode SetScope définit l’étendue actuelle.
Syntaxe
HRESULT SetScope(
[in] ULONG64 InstructionOffset,
[in, optional] PDEBUG_STACK_FRAME ScopeFrame,
[in, optional] PVOID ScopeContext,
[in] ULONG ScopeContextSize
);
Paramètres
[in] InstructionOffset
Spécifie l’emplacement dans l’espace d’adressage virtuel du processus pour l’instruction actuelle de l’étendue. Cette option n’est utilisée que si ScopeFrame et ScopeContext ont la valeur NULL ; sinon, elle est ignorée.
[in, optional] ScopeFrame
Spécifie le cadre de pile de l’étendue. Pour plus d’informations sur cette structure, consultez DEBUG_STACK_FRAME.
[in, optional] ScopeContext
Spécifie le contexte de thread de l’étendue. Le type du contexte de thread est la structure CONTEXT du processeur effectif de la cible. La mémoire tampon ScopeContext doit être suffisamment grande pour contenir cette structure. Si ScopeContext a la valeur NULL, le contexte de registre actuel est utilisé à la place.
[in] ScopeContextSize
Spécifie la taille de la mémoire tampon ScopeContext.
Valeur retournée
Cette méthode peut également retourner des valeurs d’erreur. Pour plus d’informations, consultez Valeurs de retour .
Code de retour | Description |
---|---|
|
L’étendue identifiée par InstructionOffset, ScopeFrame et ScopeContext est identique à l’ancienne étendue. |
|
L’étendue a changé. |
Remarques
Si seule InstructionOffset est fournie, l’étendue peut être utilisée pour rechercher des noms de symboles ; toutefois, les valeurs de ces symboles ne seront pas disponibles.
Pour définir l’étendue sur un état précédent, ScopeContext doit être fourni. Cela n’est pas toujours nécessaire (par exemple, si vous souhaitez uniquement accéder aux symboles et non aux registres). Pour définir l’étendue sur une image sur la pile actuelle, vous pouvez utiliser SetScopeFrameByIndex .
Pour plus d’informations sur les étendues, consultez Étendues et groupes de symboles.
Configuration requise
Condition requise | Valeur |
---|---|
Plateforme cible | Desktop (Expérience utilisateur) |
En-tête | dbgeng.h (inclure Dbgeng.h) |