Función SetServiceBits (lmserver.h)

Registra un tipo de servicio con el administrador de control de servicios y el servicio servidor. Después, el servicio Servidor puede anunciar el tipo de servicio registrado como el que admite actualmente. Las funciones NetServerGetInfo y NetServerEnum obtienen los tipos de servicio admitidos de una máquina especificada.

Sintaxis

BOOL NET_API_FUNCTION SetServiceBits(
  [in] SERVICE_STATUS_HANDLE hServiceStatus,
  [in] DWORD                 dwServiceBits,
  [in] BOOL                  bSetBitsOn,
  [in] BOOL                  bUpdateImmediately
);

Parámetros

[in] hServiceStatus

Identificador de la estructura de información de estado para el servicio. Un servicio obtiene el identificador mediante una llamada a la función RegisterServiceCtrlHandlerEx .

[in] dwServiceBits

El tipo de servicio.

Algunas marcas de bits (0xC00F3F7B) están reservadas para su uso por Parte de Microsoft. Se produce un error en la función SetServiceBits con el error ERROR_INVALID_DATA si se establece alguna de estas marcas de bits en dwServiceBits. Microsoft reserva las marcas de bits siguientes para su uso.

SV_TYPE_WORKSTATION (0x00000001)

SV_TYPE_SERVER (0x00000002)

SV_TYPE_DOMAIN_CTRL (0x00000008)

SV_TYPE_DOMAIN_BAKCTRL (0x00000010)

SV_TYPE_TIME_SOURCE (0x00000020)

SV_TYPE_AFP (0x00000040)

SV_TYPE_DOMAIN_MEMBER (0x00000100)

SV_TYPE_PRINTQ_SERVER (0x00000200)

SV_TYPE_DIALIN_SERVER (0x00000400)

SV_TYPE_XENIX_SERVER (0x00000800)

SV_TYPE_SERVER_UNIX (0x00000800)

SV_TYPE_NT (0x00001000)

SV_TYPE_WFW (0x00002000)

SV_TYPE_POTENTIAL_BROWSER (0x00010000)

SV_TYPE_BACKUP_BROWSER (0x00020000)

SV_TYPE_MASTER_BROWSER (0x00040000)

SV_TYPE_DOMAIN_MASTER (0x00080000)

SV_TYPE_LOCAL_LIST_ONLY (0x40000000)

SV_TYPE_DOMAIN_ENUM (0x80000000)

Microsoft define ciertas marcas de bits (0x00300084), pero no están reservadas específicamente para el software de sistemas. A continuación se muestran estas marcas de bits.

SV_TYPE_SV_TYPE_SQLSERVER (0x00000004)

SV_TYPE_NOVELL (0x00000080)

SV_TYPE_DOMAIN_CTRL (0x00100000)

SV_TYPE_DOMAIN_BAKCTRL (0x00200000)

Microsoft no define determinadas marcas de bits (0x3FC0C000) y Microsoft no coordina su uso. Los desarrolladores de aplicaciones que usan estos bits deben tener en cuenta que otras aplicaciones también pueden usarlas, lo que crea un conflicto. A continuación se muestran estas marcas de bits.

0x00004000

0x00008000

0x00400000

0x00800000

0x01000000

0x02000000

0x04000000

0x08000000

0x10000000

0x20000000

[in] bSetBitsOn

Si este valor es TRUE, se establecerán los bits de dwServiceBit . Si este valor es FALSE, se borrarán los bits.

[in] bUpdateImmediately

Si este valor es TRUE, el servicio servidor debe realizar una actualización inmediata. Si este valor es FALSE, la actualización no se realiza inmediatamente.

Valor devuelto

Si la función se realiza correctamente, el valor devuelto es distinto de cero.

Si la función no se realiza correctamente, el valor devuelto es cero. Para obtener información de error extendida, llame a GetLastError.

Requisitos

Requisito Value
Cliente mínimo compatible Windows XP [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2003 [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado lmserver.h
Library Advapi32.lib
Archivo DLL Advapi32.dll

Consulte también

NetServerEnum

NetServerGetInfo

RegisterServiceCtrlHandlerEx

Funciones de servicio

SetServiceStatus