Функция SetServiceBits (lmserver.h)
Регистрирует тип службы в диспетчере управления службами и в службе сервера. Затем служба сервера может объявить зарегистрированный тип службы как поддерживаемый в настоящее время. Функции NetServerGetInfo и NetServerEnum получают поддерживаемые типы служб указанного компьютера.
Синтаксис
BOOL NET_API_FUNCTION SetServiceBits(
[in] SERVICE_STATUS_HANDLE hServiceStatus,
[in] DWORD dwServiceBits,
[in] BOOL bSetBitsOn,
[in] BOOL bUpdateImmediately
);
Параметры
[in] hServiceStatus
Дескриптор структуры сведений о состоянии для службы. Служба получает дескриптор, вызывая функцию RegisterServiceCtrlHandlerEx .
[in] dwServiceBits
Тип службы.
Некоторые битовые флаги (0xC00F3F7B) зарезервированы для использования корпорацией Майкрософт. Функция SetServiceBits завершается сбоем с ошибкой ERROR_INVALID_DATA, если какой-либо из этих битовых флагов установлен в dwServiceBits. Следующие битовые флаги зарезервированы для использования корпорацией Майкрософт.
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)
Некоторые битовые флаги (0x00300084) определены корпорацией Майкрософт, но специально не зарезервированы для системного программного обеспечения. Ниже приведены эти битовые флаги.
SV_TYPE_SV_TYPE_SQLSERVER (0x00000004)
SV_TYPE_NOVELL (0x00000080)
SV_TYPE_DOMAIN_CTRL (0x00100000)
SV_TYPE_DOMAIN_BAKCTRL (0x00200000)
Некоторые битовые флаги (0x3FC0C000) не определены корпорацией Майкрософт, и их использование не координируется корпорацией Майкрософт. Разработчики приложений, которые используют эти биты, должны знать, что другие приложения также могут использовать их, что приводит к конфликту. Ниже приведены эти битовые флаги.
0x00004000
0x00008000
0x00400000
0x00800000
0x01000000
0x02000000
0x04000000
0x08000000
0x10000000
0x20000000
[in] bSetBitsOn
Если это значение равно TRUE, необходимо задать биты в dwServiceBit . Если это значение равно FALSE, биты должны быть очищены.
[in] bUpdateImmediately
Если это значение равно TRUE, служба сервера выполняет немедленное обновление. Если это значение равно FALSE, обновление выполняется не сразу.
Возвращаемое значение
Если функция выполняется успешно, возвращается ненулевое значение.
Если функция выполняется неудачно, возвращается нулевое значение. Дополнительные сведения об ошибке можно получить, вызвав GetLastError.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows XP [только классические приложения] |
Минимальная версия сервера | Windows Server 2003 [только классические приложения] |
Целевая платформа | Windows |
Header | lmserver.h |
Библиотека | Advapi32.lib |
DLL | Advapi32.dll |