Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Você pode usar um dos seguintes métodos para depurar o seu serviço.
Use o depurador para depurar o serviço enquanto ele está em execução. Primeiro, obtenha o identificador de processo (PID) do processo de serviço. Depois de obter o PID, anexe ao processo em execução. Para obter informações sobre sintaxe, consulte a documentação incluída com o depurador.
Chame a função DebugBreak para invocar o depurador para depuração just-in-time.
Especifique um depurador a ser usado ao iniciar um programa. Para fazer isso, crie uma chave chamada Opções de Execução de Arquivo de Imagem no seguinte local do Registro:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion
Crie uma subchave com o mesmo nome do seu serviço (por exemplo, MYSERV.EXE). A essa subchave, adicione um valor do tipo REG_SZ, com o nome de Depurador. Use o caminho completo para o depurador como o valor da cadeia de caracteres. No applet do painel de controle Serviços, seleciona o teu serviço, clica em Início e ativa Permitir que o serviço interaja com a área de trabalho. O serviço deve ser um serviço interativo, caso contrário, o depurador não pode ser executado na área de trabalho padrão. Observe que essa técnica não é mais suportada a partir do Windows Vista porque todos os serviços são executados em sessão reservada exclusivamente para serviços e não oferece suporte à exibição de uma interface do usuário.
Use Event Tracing para registrar informações.
Para depurar o código de inicialização de um serviço de início automático, você terá que instalar e executar temporariamente o serviço como um serviço de início por demanda.
Às vezes, pode ser necessário executar um serviço como um aplicativo de console para fins de depuração. Nesse cenário, a função StartServiceCtrlDispatcher retornará ERROR_FAILED_SERVICE_CONTROLLER_CONNECT. Portanto, certifique-se de estruturar seu código de modo que o código específico do serviço não seja chamado quando esse erro for retornado.
Tópicos relacionados