Condividi tramite


Funzione SetServiceBits (lmserver.h)

Registra un tipo di servizio con gestione controllo del servizio e il servizio Server. Il servizio Server può quindi annunciare il tipo di servizio registrato come quello attualmente supportato. Le funzioni NetServerGetInfo e NetServerEnum ottengono i tipi di servizio supportati da un computer specificato.

Sintassi

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

Parametri

[in] hServiceStatus

Handle per la struttura delle informazioni sullo stato per il servizio. Un servizio ottiene l'handle chiamando la funzione RegisterServiceCtrlHandlerEx .

[in] dwServiceBits

Tipo di servizio.

Alcuni flag di bit (0xC00F3F7B) sono riservati per l'uso da parte di Microsoft. La funzione SetServiceBits ha esito negativo con l'errore ERROR_INVALID_DATA se uno di questi flag di bit è impostato in dwServiceBits. I flag di bit seguenti sono riservati per l'uso da parte di Microsoft.

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)

Alcuni flag di bit (0x00300084) sono definiti da Microsoft, ma non sono specificamente riservati per il software di sistemi. Di seguito sono riportati questi flag di bit.

SV_TYPE_SV_TYPE_SQLSERVER (0x00000004)

SV_TYPE_NOVELL (0x00000080)

SV_TYPE_DOMAIN_CTRL (0x00100000)

SV_TYPE_DOMAIN_BAKCTRL (0x00200000)

Alcuni flag di bit (0x3FC0C000) non sono definiti da Microsoft e il loro uso non è coordinato da Microsoft. Gli sviluppatori di applicazioni che usano questi bit devono tenere presente che anche altre applicazioni possono usarle, creando così un conflitto. Di seguito sono riportati questi flag di bit.

0x00004000

0x00008000

0x00400000

0x00800000

0x01000000

0x02000000

0x04000000

0x08000000

0x10000000

0x20000000

[in] bSetBitsOn

Se questo valore è TRUE, i bit in dwServiceBit devono essere impostati. Se questo valore è FALSE, i bit devono essere cancellati.

[in] bUpdateImmediately

Se questo valore è TRUE, il servizio server deve eseguire un aggiornamento immediato. Se questo valore è FALSE, l'aggiornamento non viene eseguito immediatamente.

Valore restituito

Se la funzione ha esito positivo, il valore restituito è diverso da zero.

Se la funzione ha esito negativo, il valore restituito è zero. Per informazioni dettagliate sull'errore, chiamare GetLastError.

Requisiti

Requisito Valore
Client minimo supportato Windows XP [solo app desktop]
Server minimo supportato Windows Server 2003 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione lmserver.h
Libreria Advapi32.lib
DLL Advapi32.dll

Vedi anche

NetServerEnum

NetServerGetInfo

RegisterServiceCtrlHandlerEx

Funzioni del servizio

SetServiceStatus