Share via


Crear método de la clase Win32_BaseService

El método createde clase WMI crea un nuevo servicio. El parámetro LoadOrderGroup representa una agrupación de servicios del sistema que definen las dependencias de ejecución. Los servicios se deben iniciar en el orden especificado por el grupo de pedidos de carga, ya que los servicios dependen entre sí. Estos servicios dependientes requieren la presencia de los servicios antecedentes para funcionar correctamente.

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 Create(
  [in] string  Name,
  [in] string  DisplayName,
  [in] string  PathName,
  [in] uint8   ServiceType,
  [in] uint8   ErrorControl,
  [in] string  StartMode,
  [in] boolean DesktopInteract,
  [in] string  StartName,
  [in] string  StartPassword,
  [in] string  LoadOrderGroup,
  [in] string  LoadOrderGroupDependencies[],
  [in] string  ServiceDependencies[]
);

Parámetros

Nombre [in]

Nombre del servicio que se va a instalar en el método Create . La longitud máxima de la cadena es de 256 caracteres. La base de datos del Administrador de control de servicios conserva las mayúsculas y minúsculas de los caracteres, pero las comparaciones de nombres de servicio siempre no distinguen mayúsculas de minúsculas. Las barras diagonales (/) y las barras diagonales inversas dobles (\) no son caracteres de nombre de servicio no válidos.

DisplayName [in]

Nombre para mostrar del servicio. Esta cadena tiene una longitud máxima de 256 caracteres. El nombre se conserva entre mayúsculas y minúsculas en el administrador de control de servicios. Las comparaciones de DisplayName siempre no distinguen mayúsculas de minúsculas.

Restricciones: acepta el mismo valor que el parámetro Name .

Ejemplo: "Atdisk".

PathName [in]

Ruta de acceso completa al archivo ejecutable que implementa el servicio.

Ejemplo: "\SystemRoot\System32\drivers\afd.sys".

ServiceType [in]

Tipo de servicios proporcionados a procesos que los llaman. El valor es un mapa de bits.

Controlador kernel (1)

Controlador del sistema de archivos (2)

Adaptador (4)

Controlador Recognizer (8)

Proceso propio (16)

Proceso de uso compartido (32)

256

Proceso interactivo

ErrorControl [in]

Gravedad del error si el método Create no se inicia. El valor indica la acción realizada por el programa de inicio si se produce un error. El sistema registra todos los errores.

Omitir (0)

No se notifica al usuario.

Normal (1)

Se notifica al usuario.

Grave (2)

El sistema se reinicia con la última configuración válida conocida.

Crítico (3)

El sistema intenta empezar con una buena configuración.

StartMode [in]

Modo de inicio del servicio base de Windows.

Inicio de arranque ("Arranque")

Controlador de dispositivo iniciado por el cargador del sistema operativo. Este valor solamente es válido para servicios de controladores.

Inicio del sistema ("Sistema")

Controlador de dispositivo iniciado por el proceso de inicialización del sistema operativo. Este valor solamente es válido para servicios de controladores.

Inicio automático ("Automático")

Servicio que el administrador de control de servicios iniciará automáticamente durante el inicio del sistema.

Inicio de la demanda ("Manual")

Servicio que va a iniciar el administrador de control de servicios cuando un proceso llama al método StartService .

Deshabilitado ("Deshabilitado")

Servicio que ya no se puede iniciar.

DesktopInteract [in]

Si es true, el servicio puede crear o comunicarse con ventanas en el escritorio.

StartName [in]

Nombre de cuenta con el que se ejecuta el servicio. Según el tipo de servicio, el nombre de la cuenta puede estar en forma de "NombreDeDominio\NombreDeUsuario". El proceso de servicio se registra con uno de estos dos formularios cuando se ejecuta. Si la cuenta pertenece al dominio integrado, se puede especificar ".\Username". Si se especifica NULL , el servicio se inicia sesión como la cuenta LocalSystem. Para un kernel o controladores de nivel de sistema, StartName contiene el nombre del objeto de controlador (es decir, \FileSystem\Rdr o \Driver\Xns) que el sistema de entrada y salida (E/S) usa para cargar el controlador de dispositivo. Si se especifica NULL , el controlador se ejecuta con un nombre de objeto predeterminado creado por el sistema de E/S basado en el nombre del servicio. Ejemplo: DWDOM\Administración.

StartPassword [in]

Contraseña al nombre de cuenta especificado por el parámetro StartName . Especifique NULL si no cambia la contraseña. Especifique una cadena vacía si el servicio no tiene contraseña.

LoadOrderGroup [in]

Nombre del grupo asociado al nuevo servicio. Los grupos de orden de carga se encuentran en el Registro y determinan la secuencia en la que se cargan los servicios en el sistema operativo. Si el puntero es NULL o si apunta a una cadena vacía, el servicio no pertenece a un grupo. Las dependencias entre grupos deben aparecer en el parámetro LoadOrderGroupDependencies . Los servicios de la lista de grupos de ordenación de carga se inician primero, seguidos de servicios en grupos que no están en la lista de grupos de ordenación de carga, seguidos de servicios que no pertenecen a un grupo. El registro tiene una lista de grupos de ordenación de carga ubicados en:

HKEY_LOCAL_MACHINE\Sistema\Currentcontrolset\Control\ServiceGroupOrder

LoadOrderGroupDependencies [in]

Matriz de grupos de ordenación de carga que deben iniciarse antes de este servicio. Cada elemento de la matriz está delimitado por NULL y la lista finaliza con dos valores NULL . En Visual Basic o script, puede pasar un vbArray. Si el puntero es NULL o si apunta a una cadena vacía, el servicio no tiene dependencias. Los nombres de grupo deben tener el prefijo SC_GROUP_IDENTIFIER (definido en el archivo Winsvc.h) para diferenciarlos de un nombre de servicio, ya que los servicios y los grupos de servicios comparten el mismo espacio de nombres. La dependencia de un grupo significa que este servicio se puede ejecutar si al menos un miembro del grupo se está ejecutando después de un intento de iniciar todos los miembros del grupo.

ServiceDependencies [in]

Matriz que contiene nombres de servicios que deben iniciarse antes de que se inicie este servicio. Cada elemento de la matriz está delimitado por NULL y la lista finaliza con dos valores NULL . En Visual Basic o script, puede pasar un vbArray. Si el puntero es NULL o si apunta a una cadena vacía, el servicio no tiene dependencias. La dependencia de un servicio significa que este servicio solo se puede ejecutar si el servicio del que depende está en ejecución.

Valor devuelto

Devuelve uno de los valores enumerados en la lista siguiente o cualquier otro valor para indicar un error.

Success

0

Se aceptó la solicitud.

No compatible

1

No se admite la solicitud.

Acceso denegado

2

El usuario no tenía el acceso necesario.

Servicios dependientes en ejecución

3

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

Control de servicio no válido

4

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

El servicio no puede aceptar el control

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.

Servicio no activo

6

El servicio no se ha iniciado.

Tiempo de espera de solicitud de servicio

7

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

Error desconocido

8

Proceso interactivo.

Ruta de acceso no encontrada

9

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

Servicio que ya se está ejecutando

10

El servicio ya se está ejecutando.

Base de datos de servicio bloqueada

11

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

Dependencia de servicio eliminada

12

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

Error de dependencia del servicio

13

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

Servicio deshabilitado

14

El servicio se ha deshabilitado del sistema.

Error de inicio de sesión de servicio

15

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

Servicio marcado para eliminación

16

Este servicio se está quitando del sistema.

Servicio sin subproceso

17

No hay ningún subproceso de ejecución para el servicio.

Dependencia circular de estado

18

Hay dependencias circulares al iniciarse el servicio.

Nombre duplicado de estado

19

Hay un servicio que se ejecuta con el mismo nombre.

Estado Nombre no válido

20

Hay caracteres no válidos en el nombre del servicio.

Parámetro no válido de estado

21

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

Estado Cuenta de servicio no válida

22

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

El servicio de estado existe

23

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

El servicio ya está en pausa

24

El servicio se encuentra en pausa actualmente en el sistema.

Otros

25 4294967295

Requisitos

Requisito Value
Cliente mínimo compatible
Windows Vista
Servidor mínimo compatible
Windows Server 2008
Espacio de nombres
Root\CIMV2
MOF
CIMWin32.mof
Archivo DLL
CIMWin32.dll

Consulte también

Clases de sistema operativo

Win32_BaseService