Partilhar via


Como: Depurar o método OnStart

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

Para depurar um problema no método OnStart

  • Criar 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 Visual C# serviço do Windows que tem esta aparência:

    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 OnStart método:

    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 OnStart método e verificar se ele está se comportando conforme esperado.

Para obter mais informações, consulte Windows Service Applications depuração.

Consulte também

Conceitos

Segurança do depurador

Outros recursos

Depurando código gerenciado