IDebugProgramProvider2::GetProviderProgramNode

Retrieves the program node for a specific program.

HRESULT GetProviderProgramNode(
   PROVIDER_FLAGS       Flags,
   IDebugDefaultPort2*  pPort,
   AD_PROCESS_ID        processId,
   REFGUID              guidEngine,
   UINT64               programId,
   IDebugProgramNode2** ppProgramNode
);
int GetProviderProgramNode(
   enum_PROVIDER_FLAGS    Flags,
   IDebugDefaultPort2     pPort,
   AD_PROCESS_ID          ProcessId,
   ref Guid               guidEngine,
   ulong                  programId,
   out IDebugProgramNode2 ppProgramNode
);

Parameters

  • Flags
    [in] A combination of flags from the PROVIDER_FLAGS enumeration. The following flags are typical for this call:

    Flag

    Description

    PFLAG_REMOTE_PORT

    Caller is running on remote machine.

    PFLAG_DEBUGGEE

    Caller is currently being debugged (additional information about marshalling will be returned for each node).

    PFLAG_ATTACHED_TO_DEBUGGEE

    Caller was attached to but not launched by the debugger.

  • pPort
    [in] The port the calling process is running on.

  • processId
    [in] An AD_PROCESS_ID structure holding the ID of the process that contains the program in question.

  • guidEngine
    [in] GUID of the debug engine that the program is attached to (if any).

  • programId
    [in] ID of the program for which to get the program node.

  • ppProgramNode
    [out] An IDebugProgramNode2 object representing the requested program node.

Return Value

If successful, returns S_OK; otherwise, returns an error code.

See Also

Reference

IDebugProgramProvider2

PROVIDER_FLAGS

AD_PROCESS_ID

IDebugDefaultPort2

IDebugProgramNode2