Método IDebugClient5::CreateProcess2 (dbgeng.h)
O método CreateProcess2 executa o comando determinado para criar um novo processo.
Sintaxe
HRESULT CreateProcess2(
[in] ULONG64 Server,
[in] PSTR CommandLine,
[in] PVOID OptionsBuffer,
[in] ULONG OptionsBufferSize,
[in, optional] PCSTR InitialDirectory,
[in, optional] PCSTR Environment
);
Parâmetros
[in] Server
Especifica o servidor de processo que será anexado ao processo. Se Servidor for zero, o mecanismo criará o processo local sem usar um servidor de processo.
[in] CommandLine
Especifica a linha de comando a ser executada para criar o novo processo.
[in] OptionsBuffer
Especifica as opções de criação do processo. OptionsBuffer é um ponteiro para uma estrutura de DEBUG_CREATE_PROCESS_OPTIONS.
[in] OptionsBufferSize
Especifica o tamanho do buffer OptionsBuffer. Isso deve ser definido como sizeof(DEBUG_CREATE_PROCESS_OPTIONS).
[in, optional] InitialDirectory
Especifica o diretório inicial do processo. Se InitialDirectory for NULL, o diretório atual do servidor de processo será usado.
[in, optional] Environment
Especifica um bloco de ambiente para o novo processo. Um bloco de ambiente consiste em um bloco encerrado em nulo de cadeias de caracteres terminadas em nulo. Cada cadeia de caracteres é do formulário:
name=value
Observe que os dois últimos caracteres do bloco de ambiente são NULL: um para encerrar a cadeia de caracteres e outro para encerrar o bloco.
Se Environment estiver definido como NULL, o novo processo herdará o bloco de ambiente do servidor de processo. Se o sinalizador de DEBUG_CREATE_PROCESS_THROUGH_RTL estiver definido em OptionsBuffer, Environment deverá ser NULL.
Valor de retorno
Esse método também pode retornar valores de erro. Consulte de Valores Retornados para obter mais detalhes.
Código de retorno | Descrição |
---|---|
|
O método foi bem-sucedido. |
Observações
Esse método está disponível apenas para depuração dinâmica do modo de usuário.
Se CreateFlags contiver um dos sinalizadores DEBUG_PROCESS ou DEBUG_ONLY_THIS_PROCESS, o mecanismo também será anexado ao processo recém-criado. Isso é semelhante ao comportamento de CreateProcessAndAttach2 com seu argumento ProcessId definido como zero.
Para obter mais informações sobre como criar e anexar a destinos de modo de usuário dinâmico, consulte de Destinos do Live User-Mode .
Requisitos
Requisito | Valor |
---|---|
da Plataforma de Destino | Área de trabalho |
cabeçalho | dbgeng.h (inclua Dbgeng.h) |
Consulte também
do AttachProcess