Compartir a través de


Método IDebugClient5::CreateProcess2Wide (dbgeng.h)

El método CreateProcess2Wide ejecuta el comando especificado para crear un nuevo proceso.

Sintaxis

HRESULT CreateProcess2Wide(
  [in]           ULONG64 Server,
  [in]           PWSTR   CommandLine,
  [in]           PVOID   OptionsBuffer,
  [in]           ULONG   OptionsBufferSize,
  [in, optional] PCWSTR  InitialDirectory,
  [in, optional] PCWSTR  Environment
);

Parámetros

[in] Server

Especifica el servidor de procesos que se asociará al proceso. Si servidor es cero, el motor creará el proceso local sin usar un servidor de procesos.

[in] CommandLine

Especifica la línea de comandos que se va a ejecutar para crear el nuevo proceso.

[in] OptionsBuffer

Especifica las opciones de creación del proceso. OptionsBuffer es un puntero a una estructura de DEBUG_CREATE_PROCESS_OPTIONS.

[in] OptionsBufferSize

Especifica el tamaño del búfer OptionsBuffer. Debe establecerse en sizeof(DEBUG_CREATE_PROCESS_OPTIONS).

[in, optional] InitialDirectory

Especifica el directorio inicial del proceso. Si initialDirectory es NULL, se usa el directorio actual del servidor de procesos.

[in, optional] Environment

Especifica un bloque de entorno para el nuevo proceso. Un bloque de entorno consta de un bloque terminado en null de cadenas terminadas en NULL. Cada cadena tiene el formato :

name=value

Tenga en cuenta que los dos últimos caracteres del bloque de entorno son NULL: uno para finalizar la cadena y otro para finalizar el bloque.

Si entorno se establece en NULL, el nuevo proceso hereda el bloque de entorno del servidor de procesos. Si la marca DEBUG_CREATE_PROCESS_THROUGH_RTL está establecida en OptionsBuffer, Environment debe ser NULL.

Valor devuelto

Este método también puede devolver valores de error. Consulte valores devueltos para obtener más información.

Código devuelto Descripción
S_OK
El método se realizó correctamente.

Observaciones

Este método solo está disponible para la depuración en modo usuario activo.

Si createFlags contiene cualquiera de las marcas DEBUG_PROCESS o DEBUG_ONLY_THIS_PROCESS, el motor también se asociará al proceso recién creado. Esto es similar al comportamiento de CreateProcessAndAttach2 con su argumento ProcessId establecido en cero.

Para obtener más información sobre cómo crear y adjuntar destinos en modo de usuario activo, consulte Live User-Mode Targets.

Requisitos

Requisito Valor
de la plataforma de destino de Escritorio
encabezado de dbgeng.h (include Dbgeng.h)

Consulte también

.create (Crear proceso)

AbandonCurrentProcess

AttachProcess

ConnectProcessServer

CreateProcess2

CreateProcessAndAttach2

DetachCurrentProcess

GetRunningProcessDescription

GetRunningProcessSystemIds

IDebugClient5

TerminateCurrentProcess