Debugging Tools for Windows

GetScopeSymbolGroup

The GetScopeSymbolGroup and GetScopeSymbolGroup2 methods return a symbol group containing the symbols in the current target's scope.

HRESULT
  IDebugSymbols::GetScopeSymbolGroup(
    IN ULONG  Flags,
    IN OPTIONAL IDebugSymbolGroup *  Update,
    OUT IDebugSymbolGroup * * Symbols
    );

HRESULT
  IDebugSymbols3::GetScopeSymbolGroup2(
    IN ULONG  Flags,
    IN OPTIONAL IDebugSymbolGroup2 *  Update,
    OUT IDebugSymbolGroup2 * * Symbols
    );

Parameters

Flags
Specifies a bit-set used to determine which symbols to include in the symbol group. To include all symbols, set Flags to DEBUG_SCOPE_GROUP_ALL. The following bit-flags determine which symbols are included.
Flag Description
DEBUG_SCOPE_GROUP_ARGUMENTS Include the function arguments for the current scope.
DEBUG_SCOPE_GROUP_LOCALS Include the local variables for the current scope.

Update
Specifies a previously created symbol group that will be updated to reflect the current scope. If Update is NULL, a new symbol group interface object is created.
Symbols
Receives the symbol group interface object for the current scope. For details on this interface, see IDebugSymbolGroup

Return Value

S_OK
The method was successful.

This method may also return error values. See Return Values for more details.

Interface Version

GetScopeSymbolGroup is available in all versions of IDebugSymbols. GetScopeSymbolGroup2 is available in IDebugSymbols3 and later versions.

Comments

The Update parameter allows for efficient updates when stepping through code. Instead of creating and populating a new symbol group, the old symbol group can be updated.

For more information about scopes and symbol groups, see Scopes and Symbol Groups.

Requirements

Headers: Defined in Dbgeng.h. Include Dbgeng.h.

See Also

IDebugSymbolGroup, GetScope

Build machine: CAPEBUILD