Partilhar via


Como depurar o método OnStart

Você pode depurar o construtor do serviço do Windows entrando em uma instância do serviço. Você pode depurar o serviço do Windows por si próprio iniciando o serviço e anexando o depurador ao processo de serviço. No entanto, para depurar o método OnStart de um serviço do Windows, você deverá adicionar algumas linhas de código para simular o serviço. Para obter mais informações, consulte ServiceBase.OnStart.

Para depurar um problema no método OnStart

  • Crie uma simulação do serviço (um aplicativo de console, por exemplo) para determinar onde está o problema.

    Por exemplo, suponha que você tenha um serviço do Windows do Visual C# semelhante ao seguinte:

    public class ManagedWindowsService : System.ServiceProcess.ServiceBase 
    {
       //
       // designer and user generated methods and properties
       //
       public static int main(String[] args)
       {      
          ServiceBase.Run( new ManagedWindowsService() );
       }
    }
    

    Adicione as seguintes linhas de código para depurar o método OnStart:

    public static int main(String[] args)
    {      
       (new ManagedWindowsService()).OnStart(); // allows easy debugging of OnStart()
       ServiceBase.Run( new ManagedWindowsService() );
    }
    

    O serviço não será executado nesse modo, mas você pode depurar o método OnStart e verificar se ele está se comportando conforme o esperado.

Para obter mais informações, consulte Depurando aplicativos de serviço do Windows.

Consulte também

Conceitos

Segurança do depurador

Outros recursos

Depurando código gerenciado