Share via


IDebugProgramProvider2::GetProviderProgramNode

Applies to: yesVisual Studio noVisual Studio for Mac

Note

This article applies to Visual Studio 2017. If you're looking for the latest Visual Studio documentation, see Visual Studio documentation. We recommend upgrading to the latest version of Visual Studio. Download it here

Retrieves the program node for a specific program.

Syntax

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