Compartilhar via


Verificador de Aplicativos – Parar Códigos – Serviços

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

Os códigos de parada a seguir estão contidos neste conjunto de testes.

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

Causa provável

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 Verificador de Aplicativos
  • Formato:  –  Nome da API %ws
  • Parâmetro 1  - Não usado.
  • Parâmetro 2  - Não usado.
  • Parâmetro 3  - Não usado.
  • Parâmetro 4  - Não usado.

Informações adicionais
  • Camada de teste:  Serviço
  • ID de parada:  USING_NON_UNICODE_API
  • Código de parada:  4000000
  • Gravidade:  Erro
  • Erro único:  Não
  • Relatório de erros:  Quebrar
  • Fazer logon no arquivo:  Sim
  • Criar backtrace:  Sim

A API StartServiceCtrlDispatcher está sendo chamada uma segunda vez

Causa provável

Essa API deve ser chamada apenas uma vez no início da função wmain do serviço.

Informações exibidas pelo Verificador de Aplicativos
  • Formato:  –  Nome da API %ws
  • Parâmetro 1  - SERVICE_TABLE_ENTRY parâmetro.
  • Parâmetro 2  - Não usado.
  • Parâmetro 3  - Não usado.
  • Parâmetro 4  - Não usado.

Informações adicionais
  • Camada de teste:  Serviço
  • ID de parada:  CTRL_DISPATCHER_CALLED_TWICE
  • Código de parada:  4000001
  • Gravidade:  Erro
  • Erro único:  Não
  • Relatório de erros:  Quebrar
  • Fazer logon no arquivo:  Sim
  • Criar backtrace:  Sim

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 Verificador de Aplicativos
  • Formato:  –  Nome da API %ws
  • Parâmetro 1  - SERVICE_STATUS_HANDLE valor.
  • Parâmetro 2  - Não usado.
  • Parâmetro 3  - Não usado.
  • Parâmetro 4  - Não usado.

Informações adicionais
  • Camada de teste:  Serviço
  • ID de parada:  INVALID_SERVICE_STATUS_HANDLE
  • Código de parada:  4000002
  • Gravidade:  Erro
  • Erro único:  Não
  • Relatório de erros:  Quebrar
  • Fazer logon no arquivo:  Sim
  • Criar backtrace:  Sim

SetServiceStatus está sendo chamado de dois threads

Causa provável

Essa API deve ser chamada em série.

Informações exibidas pelo Verificador de Aplicativos
  • Formato:  –  O nome da API %ws está sendo chamado simultaneamente do serviço %ws
  • Parâmetro 1  - LPSERVICE_STATUS valor passado.
  • Parâmetro 2  - Não usado.
  • Parâmetro 3  - Não usado.
  • Parâmetro 4  - Não usado.

Informações adicionais
  • Camada de teste:  Serviço
  • ID de parada:  SET_SERVICE_STATUS_RACE
  • Código de parada:  4000003
  • Gravidade:  Erro
  • Erro único:  Não
  • Relatório de erros:  Quebrar
  • Fazer logon no 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 Verificador de Aplicativos
  • Formato:  -  Nome do serviço: %ws dwControlsAccepted: %08X
  • Parâmetro 1  - LPSERVICE_STATUS valor passado.
  • Parâmetro 2  - Não usado.
  • Parâmetro 3  - Não usado.
  • Parâmetro 4  - Não usado.

Informações adicionais
  • Camada de teste:  Serviço
  • ID de parada:  STOP_SHUTDOWN_ACCEPTED
  • Código de parada:  4000004
  • Gravidade:  Aviso
  • Erro único:  Não
  • Relatório de erros:  Nenhum
  • Fazer logon no 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 Verificador de Aplicativos
  • Formato:  -  O serviço %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 usado.

Informações adicionais
  • Camada de teste:  Serviço
  • ID de parada:  INVALID_STATE_TRANSITION
  • Código de parada:  4000005
  • Gravidade:  Erro
  • Erro único:  Não
  • Relatório de erros:  Quebrar
  • Fazer logon no 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 Verificador de Aplicativos
  • 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 usado.

Informações adicionais
  • Camada de teste:  Serviço
  • ID de parada:  DUPLICATE_STATE_PARAMS
  • Código de parada:  4000006
  • Gravidade:  Aviso
  • Erro único:  Não
  • Relatório de erros:  Nenhum
  • Fazer logon no arquivo:  Sim
  • Criar backtrace:  Sim

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

Causa provável

O serviço está deixando threads pendentes após declarar o estado PARADO

Informações exibidas pelo Verificador de Aplicativos
  • Formato:  -  O serviço %ws está vazando threads
  • Parâmetro 1  - ID do thread vazado.
  • Parâmetro 2  - Marca de serviço.
  • Parâmetro 3  - Não usado.
  • Parâmetro 4  - Não usado.

Informações adicionais
  • Camada de teste:  Serviço
  • ID de parada:  LEAKED_THREAD
  • Código de parada:  4000007
  • Gravidade:  Erro
  • Erro único:  Não
  • Relatório de erros:  Quebrar
  • Fazer logon no arquivo:  Sim
  • Criar backtrace:  Sim

Consulte Também

Verificador de Aplicativos – Parar códigos e definições

Verificador de Aplicativos – Visão geral

Verificador de Aplicativos – Recursos

Verificador de Aplicativos – Testando aplicativos

Verificador de Aplicativos – Testes no Verificador de Aplicativos

Verificador de Aplicativos – Depuração de Paradas do Verificador de Aplicativo

Verificador de Aplicativos – Perguntas frequentes