Condividi tramite


Metodo IDebugClient5::CreateProcess2Wide (dbgeng.h)

Il metodo CreateProcess2Wide esegue il comando specificato per creare un nuovo processo.

Sintassi

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

Parametri

[in] Server

Specifica il server di elaborazione che verrà collegato al processo. Se Server è zero, il motore creerà il processo locale senza usare un server di elaborazione.

[in] CommandLine

Specifica la riga di comando da eseguire per creare il nuovo processo.

[in] OptionsBuffer

Specifica le opzioni di creazione del processo. OptionsBuffer è un puntatore a una struttura DEBUG_CREATE_PROCESS_OPTIONS .

[in] OptionsBufferSize

Specifica le dimensioni del buffer OptionsBuffer. Questa opzione deve essere impostata su sizeof(DEBUG_CREATE_PROCESS_OPTIONS).

[in, optional] InitialDirectory

Specifica la directory iniziale per il processo. Se InitialDirectory è NULL, viene usata la directory corrente per il server di elaborazione.

[in, optional] Environment

Specifica un blocco di ambiente per il nuovo processo. Un blocco di ambiente è costituito da un blocco con terminazione Null di stringhe con terminazione null. Ogni stringa è del modulo:

name=value

Si noti che gli ultimi due caratteri del blocco di ambiente sono entrambi NULL: uno per terminare la stringa e uno per terminare il blocco.

Se l'ambiente è impostato su NULL, il nuovo processo eredita il blocco di ambiente del server di elaborazione. Se il flag DEBUG_CREATE_PROCESS_THROUGH_RTL è impostato in OptionsBuffer, l'ambiente deve essere NULL.

Valore restituito

Questo metodo può anche restituire valori di errore. Per altre informazioni, vedere Valori restituiti .

Codice restituito Descrizione
S_OK
Il metodo è stato eseguito correttamente.

Commenti

Questo metodo è disponibile solo per il debug in modalità utente live.

Se CreateFlags contiene uno dei flag DEBUG_PROCESS o DEBUG_ONLY_THIS_PROCESS, il motore verrà collegato anche al processo appena creato. È simile al comportamento di CreateProcessAndAttach2 con l'argomento ProcessId impostato su zero.

Per altre informazioni sulla creazione e l'associazione alle destinazioni in modalità utente live, vedere Destinazioni live User-Mode.

Requisiti

Requisito Valore
Piattaforma di destinazione Desktop
Intestazione dbgeng.h (includere Dbgeng.h)

Vedi anche

.create (Crea processo)

AbandonCurrentProcess

AttachProcess

ConnectProcessServer

CreateProcess2

CreateProcessAndAttach2

DetachCurrentProcess

GetRunningProcessDescription

GetRunningProcessSystemIds

IDebugClient5

TerminateCurrentProcess