PDEBUG_EXTENSION_PROVIDE_VALUE callback function (dbgeng.h)

The DebugExtensionProvideValue callback function sets pseudo-register values.

 CALLBACK* PDEBUG_EXTENSION_PROVIDE_VALUE DebugExtensionProvideValue;

Syntax

PDEBUG_EXTENSION_PROVIDE_VALUE PdebugExtensionProvideValue;

HRESULT PdebugExtensionProvideValue(
  [in]  PDEBUG_CLIENT Client,
  [in]  ULONG Flags,
  [in]  PCWSTR Name,
  [out] PULONG64 Value,
  [out] PULONG64 TypeModBase,
  [out] PULONG TypeId,
  [out] PULONG TypeFlags
)
{...}

Parameters

[in] Client

A client to use if the extension needs DbgEng functions.

[in] Flags

Provides behavioral flags. This parameter is currently reserved.

[in] Name

The name of the value to return. This name might be one of the names that the DebugExtensionQueryValueNames function returned or a name that the caller might already be aware of.

[out] Value

A pointer to the value to be set.

[out] TypeModBase

The base starting address for Client.

[out] TypeId

A pointer to the ID for the type of Value.

[out] TypeFlags

A parameter that you can use to return one of the following flags:

Value Meaning
DEBUG_EXT_PVTYPE_IS_VALUE
The value that is pointed to by Value is not a pointer.
DEBUG_EXT_PVTYPE_IS_POINTER
The value that is pointed to by Value is an address for a pointer to data of the type that TypeModBase and TypeId specify.

Return value

DebugExtensionProvideValue might return one of the following values:

Return code Description
S_OK
The function was successfully completed.
 

This function might also return error values. For more information about possible return values, see Return Values.

Remarks

The name that the Name parameter specifies must start with $$ and have a terminating NULL character.

DebugExtensionProvideValue is called PDEBUG_EXTENSION_PROVIDE_VALUE in the Dbgeng.h header file.

Requirements

Requirement Value
Target Platform Desktop
Header dbgeng.h

See also

DebugExtensionInitialize

DebugExtensionNotify

DebugExtensionQueryValueNames

DebugExtensionUninitialize

KnownStructOutput