estructura QUERY_SERVICE_CONFIGA (winsvc.h)
Contiene información de configuración para un servicio instalado. Se usa en la función
Sintaxis
typedef struct _QUERY_SERVICE_CONFIGA {
DWORD dwServiceType;
DWORD dwStartType;
DWORD dwErrorControl;
LPSTR lpBinaryPathName;
LPSTR lpLoadOrderGroup;
DWORD dwTagId;
LPSTR lpDependencies;
LPSTR lpServiceStartName;
LPSTR lpDisplayName;
} QUERY_SERVICE_CONFIGA, *LPQUERY_SERVICE_CONFIGA;
Miembros
dwServiceType
Tipo de servicio. Este miembro puede ser uno de los siguientes valores.
Si el valor es SERVICE_WIN32_OWN_PROCESS o SERVICE_WIN32_SHARE_PROCESS, y el servicio se ejecuta en el contexto de la cuenta de LocalSystem, también se puede especificar el siguiente tipo.
Valor | Significado |
---|---|
|
El servicio puede interactuar con el escritorio.
Para obtener más información, consulte Interactive Services. |
dwStartType
Cuándo iniciar el servicio. Este miembro puede ser uno de los siguientes valores.
dwErrorControl
Gravedad del error y acción realizada, si este servicio no se inicia. Este miembro puede ser uno de los siguientes valores.
lpBinaryPathName
Ruta de acceso completa al archivo binario del servicio.
La ruta de acceso también puede incluir argumentos para un servicio de inicio automático. Estos argumentos se pasan al punto de entrada de servicio (normalmente la función principal de
lpLoadOrderGroup
Nombre del grupo de pedidos de carga al que pertenece este servicio. Si el miembro es NULL o una cadena vacía, el servicio no pertenece a un grupo de ordenación de carga.
El programa de inicio usa grupos de ordenación de carga para cargar grupos de servicios en un orden especificado con respecto a los demás grupos. La lista de grupos de ordenación de carga se incluye en el siguiente valor del Registro:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\ServiceGroupOrder
dwTagId
Valor de etiqueta único para este servicio en el grupo especificado por el parámetro lpLoadOrderGroup. Un valor de cero indica que no se ha asignado una etiqueta al servicio. Puede usar una etiqueta para ordenar el inicio del servicio dentro de un grupo de pedidos de carga especificando un vector de orden de etiqueta en el registro ubicado en:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\GroupOrderList
Las etiquetas solo se evalúan para los servicios de tipo SERVICE_KERNEL_DRIVER y SERVICE_FILE_SYSTEM_DRIVER que tienen tipos de inicio SERVICE_BOOT_START o SERVICE_SYSTEM_START.
lpDependencies
Puntero a una matriz de nombres separados por null de servicios o grupos de ordenación de carga que deben iniciarse antes de este servicio. La matriz termina doblemente en null. Si el puntero es NULL o si apunta a una cadena vacía, el servicio no tiene dependencias. Si se especifica un nombre de grupo, debe tener como prefijo el carácter SC_GROUP_IDENTIFIER (definido en WinSvc.h) para diferenciarlo de un nombre de servicio, ya que los servicios y los grupos de servicios comparten el mismo espacio de nombres. La dependencia de un servicio significa que este servicio solo se puede ejecutar si el servicio del que depende está en ejecución. 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 intentar iniciar todos los miembros del grupo.
lpServiceStartName
Si el tipo de servicio es SERVICE_WIN32_OWN_PROCESS o SERVICE_WIN32_SHARE_PROCESS, este miembro es el nombre de la cuenta en la que se iniciará el proceso de servicio como cuando se ejecute. Este nombre puede tener el formato Dominio\UserName. Si la cuenta pertenece al dominio integrado, el nombre puede tener el formato .\UserName. El nombre también puede ser "LocalSystem" si el proceso se ejecuta en la cuenta localSystem.
Si el tipo de servicio es SERVICE_KERNEL_DRIVER o SERVICE_FILE_SYSTEM_DRIVER, este miembro es el nombre del objeto de controlador (es decir, \FileSystem\Rdr o \Driver\Xns) que usa el sistema de entrada y salida (E/S) para cargar el controlador de dispositivo. Si este miembro es NULL, el controlador se ejecutará con un nombre de objeto predeterminado creado por el sistema de E/S, en función del nombre del servicio.
lpDisplayName
Nombre para mostrar que van a usar los programas de control de servicio para identificar el 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 nombres para mostrar siempre no distinguen mayúsculas de minúsculas.
Este parámetro puede especificar una cadena localizada con el siguiente formato:
@[ruta de acceso]DLLName,-StrID
La cadena con identificador StrID se carga desde DLLName; el Ruta de acceso es opcional. Para obtener más información, vea RegLoadMUIString.
Windows Server 2003 y Windows XP: no se admiten cadenas localizadas hasta Windows Vista.
Observaciones
La información de configuración de un servicio se especifica inicialmente cuando se crea el servicio mediante una llamada a la función CreateService. La información se puede modificar llamando a la función
Ejemplos
Para obtener un ejemplo, consulte Consulta de la configuración de un servicio.
Nota
El encabezado winsvc.h define QUERY_SERVICE_CONFIG como alias que selecciona automáticamente la versión ANSI o Unicode de esta función en función de la definición de la constante de preprocesador UNICODE. La combinación del uso del alias neutral de codificación con código que no es neutral de codificación puede dar lugar a errores de coincidencia que dan lugar a errores de compilación o tiempo de ejecución. Para obtener más información, vea Conventions for Function Prototypes.
Requisitos
Requisito | Valor |
---|---|
cliente mínimo admitido | Windows XP [solo aplicaciones de escritorio] |
servidor mínimo admitido | Windows Server 2003 [solo aplicaciones de escritorio] |
encabezado de |
winsvc.h (incluya Windows.h) |
Consulte también
QueryServiceConfig de