Partilhar via


Método de ICorDebug::CreateProcess

Inicia um processo e seu segmento principal sob o controle do depurador.

HRESULT CreateProcess (
    [in]  LPCWSTR                     lpApplicationName,
    [in]  LPWSTR                      lpCommandLine,
    [in]  LPSECURITY_ATTRIBUTES       lpProcessAttributes,
    [in]  LPSECURITY_ATTRIBUTES       lpThreadAttributes,
    [in]  BOOL                        bInheritHandles,
    [in]  DWORD                       dwCreationFlags,
    [in]  PVOID                       lpEnvironment,
    [in]  LPCWSTR                     lpCurrentDirectory,
    [in]  LPSTARTUPINFOW              lpStartupInfo,
    [in]  LPPROCESS_INFORMATION       lpProcessInformation,
    [in]  CorDebugCreateProcessFlags  debuggingFlags,
    [out] ICorDebugProcess            **ppProcess
);

Parâmetros

  • lpApplicationName
    [in] Ponteiro para uma seqüência terminada por caractere nulo que especifica o módulo a ser executada pelo processo iniciado. O módulo é executado no contexto de segurança do processo de chamada.

  • lpCommandLine
    [in] Ponteiro para uma seqüência terminada por caractere nulo que especifica a linha de comando a ser executado pelo processo iniciado.

  • lpProcessAttributes
    [in] Ponteiro para um Win32 SECURITY_ATTRIBUTES estrutura que especifica o descritor de segurança para o processo. Se lpProcessAttributes é nulo, o processo obtém um descritor de segurança padrão.

  • lpThreadAttributes
    [in] Ponteiro para um Win32 SECURITY_ATTRIBUTES estrutura que especifica o descritor de segurança para o thread principal do processo. Se lpThreadAttributes é nulo, o thread obtém um descritor de segurança padrão.

  • bInheritHandles
    [in] Definido como true para indicar que cada alça herdável no processo de chamada é herdada pelo processo iniciado, ou false para indicar que as alças não são herdadas. As alças herdadas têm os mesmos direitos de acesso e o valor que as alças do originais.

  • dwCreationFlags
    [in] Uma combinação bit a bit da Sinalizadores de criação de processo do Win32 que controlam a classe de prioridade e o comportamento do processo iniciado.

  • lpEnvironment
    [in] Ponteiro para um bloco de ambiente para o novo processo.

  • lpCurrentDirectory
    [in] Ponteiro para uma seqüência terminada por caractere nulo que especifica o caminho completo para o diretório atual para o processo. Se este parâmetro for nulo, o novo processo terá a mesma unidade e pasta atuais como o processo de chamada.

  • lpStartupInfo
    [in] Ponteiro para um Win32 STARTUPINFOW estrutura que especifica a estação da janela, desktop, alças de padrão e a aparência da janela principal para o processo iniciado.

  • lpProcessInformation
    [in] Ponteiro para um Win32 PROCESS_INFORMATION estrutura que especifica as informações de identificação sobre o processo a ser iniciado.

  • debuggingFlags
    [in] Um valor igual a CorDebugCreateProcessFlags opções de enumeração que especifica a depuração.

  • ppProcess
    [out] Um ponteiro para o endereço de um ICorDebugProcess o objeto que representa o processo.

Comentários

Os parâmetros desse método são as mesmas do Win32 CreateProcess método.

Para ativar a depuração não gerenciada de modo misto, defina dwCreationFlags para DEBUG_PROCESS | DEBUG_ONLY_THIS_PROCESS. Se você quiser usar a depuração somente gerenciada, não defina esses sinalizadores.

Se o depurador e o processo a ser depurado (o processo anexado) compartilhar um único console e se a depuração interop é usado, é possível que o processo anexado manter os bloqueios de console e parar em um evento de depuração. O depurador, em seguida, bloqueará qualquer tentativa de usar o console. Para evitar esse problema, defina o sinalizador CREATE_NEW_CONSOLE dwCreationFlags parâmetro.

Não há suporte para depuração Interop em plataformas Win9x e não x86 como, por exemplo, as plataformas baseadas em IA-64 e baseados em AMD64.

Requisitos

Plataformas: Consulte Requisitos de sistema do .NET Framework.

Cabeçalho: CorDebug.idl, CorDebug.h

Biblioteca: CorGuids.lib

.NET Framework versões: 4, 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0, 1.1, 1.0

Consulte também

Referência

Interface de ICorDebug