Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Os serviços testam e verificam o uso adequado dos Serviços windows. Por exemplo, os serviços estão sendo iniciados e parados corretamente. Para obter mais informações sobre os Serviços windows, consulte Services.
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ávelProvavelmente, 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.
- Camada de Teste: Serviço de
- Parar ID: USING_NON_UNICODE_API
- Código de parada: 4000000
- severidade do : erro de
- erro único: não
- relatório de erro : interrupção do
- Log no arquivo: sim
- Criar backtrace: sim
API StartServiceCtrlDispatcher está sendo chamada uma segunda vez
causa provávelEssa 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 – parâmetro SERVICE_TABLE_ENTRY.
- parâmetro 2 – Não usado.
- parâmetro 3 – Não usado.
- parâmetro 4 – Não usado.
- Camada de Teste: Serviço de
- Parar ID: CTRL_DISPATCHER_CALLED_TWICE
- Parar código: 4000001
- severidade do : erro de
- erro único: não
- relatório de erro : interrupção do
- Log no arquivo: sim
- Criar backtrace: sim
O identificador de SERVICE_STATUS inválido está sendo passado para SetServiceStatus
causa provávelO 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.
- Camada de Teste: Serviço de
- Parar ID: INVALID_SERVICE_STATUS_HANDLE
- Parar código: 4000002
- severidade do : erro de
- erro único: não
- relatório de erro : interrupção do
- Log no arquivo: sim
- Criar backtrace: sim
SetServiceStatus está sendo chamado de dois threads
causa provávelEssa API deve ser chamada em série.
Informações exibidas pelo Verificador de Aplicativos- Formato : – nome da API %ws está sendo chamado simultaneamente do serviço de %ws
- Parâmetro 1 – valor LPSERVICE_STATUS passado.
- parâmetro 2 – Não usado.
- parâmetro 3 – Não usado.
- parâmetro 4 – Não usado.
- Camada de Teste: Serviço de
- Parar ID: SET_SERVICE_STATUS_RACE
- Parar código: 4000003
- severidade do : erro de
- erro único: não
- relatório de erro : interrupção do
- Log no arquivo: sim
- Criar backtrace: sim
Controles STOP/SHUTDOWN estão sendo aceitos enquanto o serviço está em START_PENDING estado
causa provávelA 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 – valor LPSERVICE_STATUS passado.
- parâmetro 2 – Não usado.
- parâmetro 3 – Não usado.
- parâmetro 4 – Não usado.
- Camada de Teste: Serviço de
- Parar ID: STOP_SHUTDOWN_ACCEPTED
- Parar código: 4000004
- severidade : aviso de
- erro único: não
- relatório de erro : Nenhum
- Log no arquivo: sim
- Criar backtrace: sim
O SERVIÇO está tentando uma transição de estado inválida
causa provávelO 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 : - %ws do Serviço foi encontrado tentando uma transição de estado inválida
- parâmetro 1 – estado LPSERVICE_STATUS atual.
- parâmetro 2 – LPSERVICE_STATUS Novo Estado.
- parâmetro 3 – último rastreamento de pilha SetServiceStatus.
- parâmetro 4 – Não usado.
- Camada de Teste: Serviço de
- Parar ID: INVALID_STATE_TRANSITION
- Parar código: 4000005
- severidade do : erro de
- erro único: não
- relatório de erro : interrupção do
- Log no arquivo: sim
- Criar backtrace: sim
SERVICE está tentando definir parâmetros de status idênticos
causa provávelO 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 – estado LPSERVICE_STATUS atual.
- parâmetro 2 – LPSERVICE_STATUS Novo Estado.
- parâmetro 3 – último rastreamento de pilha SetServiceStatus.
- parâmetro 4 – Não usado.
- Camada de Teste: Serviço de
- Parar ID: DUPLICATE_STATE_PARAMS
- Parar código: 4000006
- severidade : aviso de
- erro único: não
- relatório de erro : Nenhum
- Log no arquivo: sim
- Criar backtrace: sim
O SERVIÇO está deixando threads pendentes depois de entrar no estado PARADO
causa provávelO serviço está deixando threads pendentes depois de declarar o estado PARADO
Informações exibidas pelo Verificador de Aplicativos- Formato : – %ws de Serviço está vazando threads
- Parâmetro 1 – ID do Thread do thread vazado.
- parâmetro 2 – marca de serviço .
- parâmetro 3 – Não usado.
- parâmetro 4 – Não usado.
- Camada de Teste: Serviço de
- Parar ID: LEAKED_THREAD
- Parar código: 4000007
- severidade do : erro de
- erro único: não
- relatório de erro : interrupção do
- Log 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 do Verificador de Aplicativos para
Verificador de Aplicativos – Perguntas frequentes