SERVICE_REQUIRED_PRIVILEGES_INFOW estructura (winsvc.h)

Representa los privilegios necesarios para un servicio.

Sintaxis

typedef struct _SERVICE_REQUIRED_PRIVILEGES_INFOW {
  LPWSTR pmszRequiredPrivileges;
} SERVICE_REQUIRED_PRIVILEGES_INFOW, *LPSERVICE_REQUIRED_PRIVILEGES_INFOW;

Miembros

pmszRequiredPrivileges

Cadena múltiple que especifica los privilegios. Para obtener una lista de los valores posibles, consulte Privilege Constants(Constantes de privilegios).

Una cadena múltiple es una secuencia de cadenas terminadas en null, terminadas por una cadena vacía (\0). Observe el siguiente ejemplo: String1\0String2\0String3\0LastString\0\0.

Comentarios

El cambio en los privilegios necesarios surte efecto la próxima vez que se inicie el servicio. El SCM determina si el servicio puede admitir los privilegios especificados cuando intenta iniciar el servicio.

Es mejor analizar el servicio y usar el conjunto mínimo de privilegios necesarios.

Si no establece los privilegios necesarios, el SCM usa todos los privilegios asignados de forma predeterminada al token de proceso. Si especifica privilegios para un servicio, el SCM quitará los privilegios que no son necesarios del token de proceso cuando se inicie el proceso. Si varios servicios comparten un proceso, el SCM calcula la unión de privilegios requeridos por todos los servicios del proceso.

Por motivos de compatibilidad, el privilegio SeChangeNotifyPrivilege nunca se quita de un token de proceso, incluso si ningún servicio del proceso ha solicitado el privilegio. Por lo tanto, un servicio no necesita especificar explícitamente este privilegio.

Nota

El encabezado winsvc.h define SERVICE_REQUIRED_PRIVILEGES_INFO como un 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 neutro de codificación con código que no es neutral de codificación puede provocar discrepancias que dan lugar a errores de compilación o en tiempo de ejecución. Para obtener más información, vea Convenciones para prototipos de función.

Requisitos

   
Cliente mínimo compatible Windows Vista [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2008 [solo aplicaciones de escritorio]
Encabezado winsvc.h (incluye Windows.h)

Consulte también

ChangeServiceConfig2

QueryServiceConfig2