Partilhar via


Application Verifier - Stop Codes - Serviços

Os serviços testam, verificam o uso adequado dos Serviços do Windows. Por exemplo, que os serviços estão sendo iniciados e interrompidos corretamente. Para obter mais informações sobre os Serviços do Windows, consulte Services.

Os seguintes códigos de paragem estão contidos neste conjunto de testes.

Usando uma API não-Unicode (por exemplo, RegisterServiceCtrlHandlerA em vez de RegisterServiceCtrlHandlerW)

Causa provável

Muito provavelmente o aplicativo não foi compilado com a macro UNICODE definida e, portanto, interfaces não-Unicode são usadas.

informações exibidas pelo Application Verifier
  • Formato: -  nome da API %ws
  • Parâmetro 1 - Não utilizado.
  • Parâmetro 2 - Não utilizado.
  • Parâmetro 3 - Não utilizado.
  • Parâmetro 4 - Não utilizado.

Informações adicionais
  • camada de teste: Service
  • Stop ID: USING_NON_UNICODE_API
  • código de paragem: 4000000
  • gravidade: erro 
  • Erro único: não
  • Relatório de erros: Break
  • Log para arquivo: sim
  • Criar backtrace: sim

A API StartServiceCtrlDispatcher está sendo chamada pela segunda vez

Causa provável

Esta API destina-se a ser chamada apenas uma vez no início da função wmain do serviço.

informações exibidas pelo Application Verifier
  • Formato: -  nome da API %ws
  • Parâmetro 1 - SERVICE_TABLE_ENTRY parâmetro.
  • Parâmetro 2 - Não utilizado.
  • Parâmetro 3 - Não utilizado.
  • Parâmetro 4 - Não utilizado.

Informações adicionais
  • camada de teste: Service
  • ID de parada: CTRL_DISPATCHER_CALLED_TWICE
  • Código de paragem: 4000001
  • gravidade: erro 
  • Erro único: não
  • Relatório de erros: Break
  • Log para arquivo: sim
  • Criar backtrace: sim

O identificador de SERVICE_STATUS inválido está sendo passado para SetServiceStatus

Causa provável

O identificador de SERVICE_STATUS inválido está sendo passado para SetServiceStatus.

informações exibidas pelo Application Verifier
  • Formato: -  nome da API %ws
  • Parâmetro 1 - SERVICE_STATUS_HANDLE valor.
  • Parâmetro 2 - Não utilizado.
  • Parâmetro 3 - Não utilizado.
  • Parâmetro 4 - Não utilizado.

Informações adicionais
  • camada de teste: Service
  • Stop ID: INVALID_SERVICE_STATUS_HANDLE
  • Código de paragem: 4000002
  • gravidade: erro 
  • Erro único: não
  • Relatório de erros: Break
  • Log para arquivo: sim
  • Criar backtrace: sim

SetServiceStatus está sendo chamado a partir de dois threads

Causa provável

Esta API destina-se a ser chamada em série.

informações exibidas pelo Application Verifier
  • Formato: -  nome da API %ws está sendo chamado simultaneamente a partir de %ws serviço
  • Parâmetro 1 - LPSERVICE_STATUS valor passado.
  • Parâmetro 2 - Não utilizado.
  • Parâmetro 3 - Não utilizado.
  • Parâmetro 4 - Não utilizado.

Informações adicionais
  • camada de teste: Service
  • ID de parada: SET_SERVICE_STATUS_RACE
  • Código de paragem: 4000003
  • gravidade: erro 
  • Erro único: não
  • Relatório de erros: Break
  • Log para arquivo: sim
  • Criar backtrace: sim

Os controles STOP/SHUTDOWN estão sendo aceitos enquanto o serviço está em START_PENDING estado

Causa provável

A maioria dos serviços não pode aceitar controles de parada/desligamento durante a inicialização

informações exibidas pelo Application Verifier
  • Formato: -  Nome do serviço: %ws dwControlsAccepted: %08X
  • Parâmetro 1 - LPSERVICE_STATUS valor passado.
  • Parâmetro 2 - Não utilizado.
  • Parâmetro 3 - Não utilizado.
  • Parâmetro 4 - Não utilizado.

Informações adicionais
  • camada de teste: Service
  • Stop ID: STOP_SHUTDOWN_ACCEPTED
  • Código de paragem: 4000004
  • Gravidade: Aviso
  • Erro único: não
  • Relatório de erros: Nenhum
  • Log para arquivo: sim
  • Criar backtrace: sim

SERVICE está tentando uma transição de estado inválida

Causa provável

O serviço tentou fazer uma transição de estado inválida ou definir parâmetros de status idênticos

informações exibidas pelo Application Verifier
  • Formato: -  Service %ws foi encontrado tentando uma transição de estado inválida
  • Parâmetro 1 - LPSERVICE_STATUS Estado atual.
  • Parâmetro 2 - LPSERVICE_STATUS Novo Estado.
  • Parâmetro 3 - Último rastreamento de pilha SetServiceStatus.
  • Parâmetro 4 - Não utilizado.

Informações adicionais
  • camada de teste: Service
  • ID de parada: INVALID_STATE_TRANSITION
  • Código de paragem: 4000005
  • gravidade: erro 
  • Erro único: não
  • Relatório de erros: Break
  • Log para arquivo: sim
  • Criar backtrace: sim

SERVICE está tentando definir parâmetros de status idênticos

Causa provável

O serviço tentou definir parâmetros de status idênticos

informações exibidas pelo Application Verifier
  • Formato: -  O serviço %ws tentou definir parâmetros de status idênticos
  • Parâmetro 1 - LPSERVICE_STATUS Estado atual.
  • Parâmetro 2 - LPSERVICE_STATUS Novo Estado.
  • Parâmetro 3 - Último rastreamento de pilha SetServiceStatus.
  • Parâmetro 4 - Não utilizado.

Informações adicionais
  • camada de teste: Service
  • Stop ID: DUPLICATE_STATE_PARAMS
  • Código de paragem: 4000006
  • Gravidade: Aviso
  • Erro único: não
  • Relatório de erros: Nenhum
  • Log para arquivo: sim
  • Criar backtrace: sim

SERVICE está deixando threads pendentes depois de entrar no estado INTERROMPIDO

Causa provável

O serviço está deixando threads pendentes depois de declarar o estado STOP

informações exibidas pelo Application Verifier
  • Formato: -  Service %ws está vazando tópicos
  • Parâmetro 1 - Thread Id do thread vazado.
  • Parâmetro 2 - etiqueta de serviço.
  • Parâmetro 3 - Não utilizado.
  • Parâmetro 4 - Não utilizado.

Informações adicionais
  • camada de teste: Service
  • ID de parada: LEAKED_THREAD
  • Código de paragem: 4000007
  • gravidade: erro 
  • Erro único: não
  • Relatório de erros: Break
  • Log para arquivo: sim
  • Criar backtrace: sim

Ver também

Application Verifier - Códigos de parada e definições

Application Verifier - Visão geral

Application Verifier - Recursos

Application Verifier - Testando aplicativos

Application Verifier - Testes dentro do Application Verifier

Application Verifier - Debugging Application Verifier para

Application Verifier - Perguntas Frequentes