Share via


Cómo: Realizar tareas administrativas en los servicios

Actualización: noviembre 2007

Puede realizar diversas tareas administrativas estándar en un servicio, entre ellas, iniciarlo y detenerlo, pausarlo y reiniciarlo. Puede realizar estas tareas de dos maneras: mediante el comando Iniciar Administrador de servicios en Explorador de servidores/Explorador de bases de datos, o bien llamando a los métodos en una instancia del componente ServiceController que se encuentra conectada a un servicio existente.

Generalmente, el autor del servicio escribe código que personaliza la acción asociada con una tarea específica. Por ejemplo, un servicio puede contener código que responda a un comando OnPause. En este caso, el procesamiento personalizado para la tarea Pausar se ejecuta antes de hacer una pausa en el servicio. Para obtener información sobre cómo se define la función del servicio, vea Cómo: Crear servicios de Windows.

Las tareas específicas que están disponibles en un servicio dependen de sus propiedades; por ejemplo, puede establecer la propiedad CanStop de un servicio en false. Esto hace que el comando Detener deje de estar disponible en ese servicio concreto. Si intenta detener el servicio desde el código, el sistema producirá el error: "No se pudo detener nombreDeServicio".

Nota:

Es posible que su equipo muestre nombres o ubicaciones diferentes para algunos de los elementos de la interfaz de usuario de Visual Studio incluidos en las instrucciones siguientes. La edición de Visual Studio que se tenga y la configuración que se utilice determinan estos elementos. Para obtener más información, vea Valores de configuración de Visual Studio.

Para llevar a cabo una tarea administrativa desde el Explorador de servidores/Explorador de bases de datos

  1. En Explorador de servidores/Explorador de bases de datos, agregue el servidor en el que desea realizar la tarea si aún no aparece en la lista. Para obtener más información, vea Cómo: Tener acceso e inicializar el Explorador de servidores o el Explorador de bases de datos.

  2. Para abrir la consola Servicios y tener acceso a las opciones individuales de servicio, haga clic con el botón secundario en el nodo Servicios y haga clic en Iniciar Administrador de servicios.

Para ejecutar una tarea administrativa mediante programación

  1. Cree una instancia de la clase ServiceController y configúrela para que interactúe con el servicio que desea administrar. Para obtener más información, vea Cómo: Crear instancias de componentes ServiceController.

  2. Llame al método adecuado para iniciar, detener, pausar o continuar el servicio.

    Sugerencia:

    Es posible que desee consultar la propiedad correspondiente de cualquiera de estos comandos con el fin de determinar si el servicio responderá a la solicitud; es decir, quizás desee crear una instrucción condicional que consulte la propiedad CanStop del servicio y determine si está establecida en true antes de llamar al método Stop.

    El ejemplo siguiente muestra cómo evaluar si un servicio puede aceptar un comando dado antes de emitir el comando.

    If myController.CanStop Then
        myController.Stop()
    End If
    
         if (myController.CanStop)
            {
                myController.Stop();
            }
    

Vea también

Tareas

Cómo: Crear instancias de componentes ServiceController

Cómo: Recuperar listas de servicios

Cómo: Crear servicios de Windows

Conceptos

Introducción a la comunicación con servicios existentes

Referencia

Cómo: Tener acceso e inicializar el Explorador de servidores o el Explorador de bases de datos