Compartir a través de


Cómo: Depurar el método OnStart

Este tema se aplica a:

Edición

Visual Basic

C#

C++

Web Developer

Express

El tema es aplicable El tema es aplicable

Sólo administrado

El tema es aplicable

Pro, Premium y Ultimate

El tema es aplicable El tema es aplicable

Sólo administrado

El tema es aplicable

Se puede depurar el constructor del servicio de Windows mediante la ejecución paso a paso de una instancia del servicio. Se puede depurar el propio servicio de Windows si se inicia el servicio y se asocia el depurador al proceso del servicio. Sin embargo, para depurar el método OnStart de un servicio de Windows, se deben agregar algunas líneas de código para simular el servicio. Para obtener más información, vea ServiceBase.OnStart.

Para depurar un problema en el método OnStart

  • Cree una simulación del servicio (por ejemplo, una aplicación de consola) para determinar dónde está el problema.

    Por ejemplo, supongamos que tiene un servicio de Windows en Visual C# como el siguiente:

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

    Agregue las siguientes líneas de código para depurar el método OnStart:

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

    El servicio no se ejecutará en este modo, pero se puede depurar el método OnStart y comprobar si funciona como se esperaba.

Para obtener más información, vea Depurar aplicaciones de servicios de Windows.

Vea también

Conceptos

Seguridad del depurador

Otros recursos

Depurar código administrado