Cómo: Crear servicios de Windows

Actualización: noviembre 2007

Al crear un servicio, puede utilizar una plantilla de proyecto de Visual Studio denominada Servicio de Windows. Esta plantilla realiza automáticamente gran parte del trabajo: crea referencias a las clases y espacios de nombres adecuados, configura la herencia de la clase base para los servicios y reemplaza varios de los métodos que probablemente deseará reemplazar.

Nota:

La plantilla Servicio de Windows y la funcionalidad asociada no están disponibles en la Visual Studio Standard Edition.

Como mínimo, para crear un servicio funcional, deberá:

  • Establezca la propiedad ServiceName.

  • Crear los instaladores necesarios para la aplicación de servicio.

  • Reemplazar y especificar el código de los métodos OnStart y OnStop para personalizar las formas en que desea que se comporte el servicio.

Después de agregar instaladores a la aplicación, el siguiente paso consiste en crear un proyecto de instalación que instale los archivos de proyecto compilados y ejecute los instaladores necesarios para instalar el servicio. Para crear un proyecto de instalación completo, se debe agregar el resultado del proyecto de servicio al proyecto de instalación y, a continuación, agregar una acción personalizada para que se instale el servicio. Para obtener más información sobre proyectos de instalación, vea Proyectos de instalación. Para obtener más información sobre acciones personalizadas, vea Tutorial: Crear una acción personalizada.

Para crear una aplicación de servicio de Windows

  1. Cree un proyecto de Servicio de Windows.

    Nota:

    Para obtener instrucciones sobre la escritura de un servicio sin usar la plantilla, vea Cómo: Crear servicios mediante programación.

  2. En la ventana Propiedades, establezca la propiedad ServiceName para su servicio.

    Nota:

    El valor de la propiedad ServiceName siempre debe coincidir con el nombre registrado en las clases del instalador. Si cambia esta propiedad, también debe actualizar la propiedad ServiceName de clases del instalador.

  3. Establezca cualquiera de las siguientes propiedades para determinar cómo funcionará el servicio.

    Propiedad

    Configuración

    CanStop

    True para indicar que el servicio aceptará solicitudes para detener la ejecución; false para impedir que se detenga el servicio.

    CanShutdown

    True para indicar que el servicio desea recibir notificaciones cuando el equipo en que reside se apague, lo que permite llamar al procedimiento OnShutdown.

    CanPauseAndContinue

    True para indicar que el servicio aceptará solicitudes para hacer pausas o reanudar la ejecución; false para impedir que el servicio haga pausas y reanude la ejecución.

    CanHandlePowerEvent

    Es True para indicar que el servicio puede controlar la notificación de cambios en el estado de energía del equipo; es false para evitar que se notifique al servicio de estos cambios.

    AutoLog

    Es True para escribir entradas informativas en el registro de eventos de la aplicación cuando el servicio realice una acción; es false para deshabilitar esta funcionalidad. Para obtener más información, vea Cómo: Registrar información sobre servicios.

    Nota:
    De manera predeterminada, AutoLog se establece como true.
    Nota:

    Cuando CanStop o CanPauseAndContinuese establecen en false, el Administrador de control de servicios deshabilitará las opciones de menú correspondientes para detener, establecer una pausa o continuar con el servicio.

  4. Vaya al Editor de código y rellene los procesos que desea para los procedimientos OnStart y OnStop.

  5. Reemplace los métodos para los que se desea definir la funcionalidad.

  6. Agregue los instaladores necesarios para su aplicación de servicio. Para obtener más información, vea Cómo: Agregar instaladores a una aplicación de servicio.

  7. Genere el proyecto seleccionando Generar solución en el menú Generar.

    Nota:

    No presione F5 para ejecutar el proyecto; no es posible ejecutar de esta forma un proyecto de servicio.

  8. Instale el servicio. Para obtener más información, vea Cómo: Instalar y desinstalar servicios.

Vea también

Tareas

Cómo: Crear servicios mediante programación

Cómo: Agregar instaladores a una aplicación de servicio

Cómo: Registrar información sobre servicios

Cómo: Iniciar servicios

Cómo: Especificar el contexto de seguridad de los servicios

Cómo: Instalar y desinstalar servicios

Tutorial: Crear una aplicación de servicios de Windows en el Diseñador de componentes

Conceptos

Introducción a las aplicaciones de servicios de Windows