Share via


Método StopService de la clase Win32_Service (Sdoias.h) para terminal service

El método de clase WMIStopService coloca el servicio, representado por el objeto Win32_TerminalService, en estado detenido.

En este tema se usa la sintaxis de Managed Object Format (MOF). Para obtener más información sobre el uso de este método, vea Llamar a un método.

Sintaxis

uint32 StopService();

Parámetros

Este método no tiene parámetros.

Valor devuelto

Devuelve uno de los valores enumerados en la lista siguiente o cualquier otro valor para indicar un error. Para obtener códigos de error adicionales, consulte Constantes de error de WMI o WbemErrorEnum. Para obtener valores HRESULT generales, consulte Códigos de error del sistema.

0

Se aceptó la solicitud.

1

No se admite la solicitud.

2

El usuario no tenía el acceso necesario.

3

No se puede detener el servicio porque otros servicios que se están ejecutando dependen de él.

4

El código de control solicitado no es válido o no es aceptable para el servicio.

5

El código de control solicitado no se puede enviar al servicio porque el estado del servicio (Win32_BaseService. Propiedad State ) es igual a 0, 1 o 2.

6

El servicio no se ha iniciado.

7

El servicio no respondió a tiempo a la solicitud de inicio.

8

Error desconocido al iniciar el servicio.

9

No se encontró la ruta de acceso del directorio al archivo ejecutable del servicio.

10

El servicio ya se está ejecutando.

11

La base de datos para agregar un nuevo servicio está bloqueada.

12

Una dependencia en la que se basa este servicio se ha quitado del sistema.

13

El servicio no pudo encontrar el servicio necesario de un servicio dependiente.

14

El servicio se ha deshabilitado del sistema.

15

El servicio no tiene la autenticación correcta para ejecutarse en el sistema.

16

Este servicio se está quitando del sistema.

17

El servicio no tiene ningún subproceso de ejecución.

18

El servicio tiene dependencias circulares cuando se inicia.

19

Un servicio se ejecuta con el mismo nombre.

20

El nombre del servicio tiene caracteres no válidos.

21

Se han pasado parámetros no válidos al servicio.

22

La cuenta con la que se ejecuta este servicio no es válida o carece de los permisos para ejecutar el servicio.

23

El servicio existe en la base de datos de servicios disponibles del sistema.

24

El servicio se encuentra en pausa actualmente en el sistema.

Observaciones

Después de determinar qué servicios se pueden detener o pausar, puede usar los métodos StopService y PauseService para detener y pausar los servicios. La decisión de detener un servicio en lugar de pausarlo, o viceversa, depende de varios factores, incluidos los siguientes:

  • ¿Es capaz de pausar el servicio? Si no es así, la única opción es detener el servicio.
  • ¿Necesita seguir controlando las solicitudes de cliente para cualquier persona que ya esté conectada al servicio? Si es así, pausar un servicio normalmente permite controlar los clientes existentes al denegar el acceso a los nuevos clientes. Por el contrario, al detener un servicio, todos los clientes se desconectan inmediatamente.
  • ¿Necesita volver a configurar un servicio y hacer que los cambios surtan efecto inmediatamente? Aunque se pueden cambiar las propiedades del servicio mientras se pausa un servicio, la mayoría de ellos no surten efecto hasta que el servicio se detenga y reinicie realmente.

El código de scripting necesario para detener un servicio es casi idéntico al código necesario para pausar el servicio.

Si intenta detener un servicio que tiene servicios dependientes en ejecución, se produce un error en el método StopService con un valor devuelto de 3. Los servicios dependientes deben detenerse primero.

Si detiene un servicio, compruebe inmediatamente el Win32_TerminalService. Propiedad State , ya que el valor todavía puede mostrar el servicio como en ejecución.

Ejemplos

Set-RemoteService Ejemplo de PowerShell Establece el estado del servicio para las máquinas remotas.

El ejemplo Stop a Service and Its Dependents VBScript detiene un servicio y todos los servicios dependientes.

Requisitos

Requisito Value
Cliente mínimo compatible
Windows Vista
Servidor mínimo compatible
Windows Server 2008
Espacio de nombres
Root\CIMv2\TerminalServices
Encabezado
Sdoias.h
MOF
TSCfgWmi.mof
Archivo DLL
TSCfgWmi.dll

Consulte también

Win32_Service

Clases de sistema operativo

Win32_TerminalService

Tareas de WMI: servicios

PauseService