Processo iniciado com CreateProcess() pode terminar prematuramente

Traduções deste artigo Traduções deste artigo
ID do artigo: 156484 - Exibir os produtos aos quais esse artigo se aplica.
Expandir tudo | Recolher tudo

Sintomas

Cmd.exe, Perl.exe ou outros aplicativos de modo de console podem falhar ao inicializar corretamente e encerrado prematuramente quando iniciado por um serviço usando as APIs CreateProcessAsUser() ou CreateProcess(). O processo de chamada não tem como saber que o aplicativo iniciado de modo de console foi encerrado prematuramente.

Em alguns casos, a chamada GetExitCode() contra o processo falha indica o seguinte código de saída:
L 128 ERROR_WAIT_NO_CHILDREN - não há nenhum processo filho para aguardar.
Em aplicativos multithread, o encerramento prematuro faz com que vazamentos de heap da área de trabalho. Com o tempo é esgotado o heap da área de trabalho, que resulta em erros de inicialização User32.dll ou Kernel32.dll.

Mais Informações

  • Internet Information Server (IIS), podem apresentar esse problema intermitentemente ao processamento de scripts CGI ou Perl. Nesse caso, o navegador retorna o seguinte erro ao executar scripts CGI:
    Erro CGI

    O aplicativo CGI especificado misbehaved retornando um conjunto completo de cabeçalhos HTTP não. Os cabeçalhos ele retornou estão:.
  • Serviço de comando remoto (RCMD) também podem apresentar esse problema. RCMD clientes experiência conectar e desconectar mensagens quando eles tentam acessar um servidor executando serviço RCMD. Isso pode ser usado como um aplicativo de teste para verificar se o outro serviço está em execução para esse problema.
  • Outros serviços de terceiros (tais como Patrulha rodoviária da BMC software) também são conhecidos falhe devido a esse problema.

Resolução

Para resolver esse problema, consulte os seguintes artigos na Base de dados de Conhecimento da Microsoft para obter mais informações:
Identificação do artigo: 142676
TITLE: Como corrigir erros comuns de arquivo User32.dll

Identificação do artigo: 175687
TITLE: Win32k.sys causa STOP 0x0000001e e 0x0000000a no SMP

Propriedades

ID do artigo: 156484 - Última revisão: quarta-feira, 1 de novembro de 2006 - Revisão: 2.3
A informação contida neste artigo aplica-se a:
  • Microsoft Windows NT Workstation 4.0 Developer Edition
  • Microsoft Windows NT Server 4.0 Standard Edition
  • Microsoft Internet Information Server 3.0
Palavras-chave: 
kbmt kbenv kbinterop kbprb KB156484 KbMtpt
Tradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine Translation ou MT), não tendo sido portanto traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 156484

Submeter comentários

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com