IDebugClient3::CreateProcessWide method (dbgeng.h)

The CreateProcessWide method creates a process from the specified command line.

Syntax

HRESULT CreateProcessWide(
  [in] ULONG64 Server,
  [in] PWSTR   CommandLine,
  [in] ULONG   CreateFlags
);

Parameters

[in] Server

Specifies the process server to use when attaching to the process. If Server is zero, the engine will create a local process without using a process server.

[in] CommandLine

Specifies the command line to execute to create the new process. The CreateProcessWide method might modify the contents of the string that you supply in this parameter. Therefore, this parameter cannot be a pointer to read-only memory (such as a const variable or a literal string). Passing a constant string in this parameter can lead to an access violation.

[in] CreateFlags

Specifies the flags to use when creating the process. For details on these flags, see the CreateFlags member of the DEBUG_CREATE_PROCESS_OPTIONS structure.

Return value

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

Return code Description
S_OK
The method was successful.

Remarks

This method is available only for live user-mode debugging.

If CreateFlags contains either of the flags DEBUG_PROCESS or DEBUG_ONLY_THIS_PROCESS, the engine also attaches to the newly created process. This behavior is similar to that of CreateProcessAndAttach2 when its argument ProcessId is set to zero.

For more information about creating and attaching to live user-mode targets, see Live User-Mode Targets.

Requirements

Requirement Value
Target Platform Desktop
Header dbgeng.h (include Dbgeng.h)

See also

.create (Create Process)

AttachProcess

ConnectProcessServer

CreateProcess2

CreateProcessAndAttach2

IDebugClient3

IDebugClient4

IDebugClient5