Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Il metodo CreateProcess2 esegue il comando specificato per creare un nuovo processo.
Sintassi
HRESULT CreateProcess2(
[in] ULONG64 Server,
[in] PSTR CommandLine,
[in] PVOID OptionsBuffer,
[in] ULONG OptionsBufferSize,
[in, optional] PCSTR InitialDirectory,
[in, optional] PCSTR 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. Deve essere impostato su sizeof(DEBUG_CREATE_PROCESS_OPTIONS).
[in, optional] InitialDirectory
Specifica la directory iniziale per il processo. Se InitialDirectory è NULL, viene utilizzata 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 formato:
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 Environment è 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, Environment deve essere NULL.
Valore restituito
Questo metodo può anche restituire valori di errore. Per altri dettagli, vedere valori restituiti.
| Codice restituito | Descrizione |
|---|---|
|
Il metodo ha avuto esito positivo. |
Osservazioni
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. Questo comportamento è simile al comportamento di CreateProcessAndAttach2 con il relativo argomento ProcessId impostato su zero.
Per altre informazioni sulla creazione e la connessione a destinazioni in modalità utente live, vedere Destinazioni User-Mode live.
Fabbisogno
| Requisito | Valore |
|---|---|
| piattaforma di destinazione | Desktop |
| intestazione | dbgeng.h (include Dbgeng.h) |