SetServiceBits-Funktion (lmserver.h)
Registriert einen Diensttyp beim Dienststeuerungs-Manager und dem Serverdienst. Der Serverdienst kann dann den registrierten Diensttyp als einen ankündigen, den er derzeit unterstützt. Die Funktionen NetServerGetInfo und NetServerEnum rufen die unterstützten Diensttypen eines angegebenen Computers ab.
Syntax
BOOL NET_API_FUNCTION SetServiceBits(
[in] SERVICE_STATUS_HANDLE hServiceStatus,
[in] DWORD dwServiceBits,
[in] BOOL bSetBitsOn,
[in] BOOL bUpdateImmediately
);
Parameter
[in] hServiceStatus
Ein Handle für die status Informationsstruktur für den Dienst. Ein Dienst ruft das Handle ab, indem er die Funktion RegisterServiceCtrlHandlerEx aufruft .
[in] dwServiceBits
Der Diensttyp.
Bestimmte Bitflags (0xC00F3F7B) sind für die Verwendung durch Microsoft reserviert. Die SetServiceBits-Funktion schlägt mit dem Fehler ERROR_INVALID_DATA fehl, wenn eines dieser Bitflags in dwServiceBits festgelegt ist. Die folgenden Bitflags sind für die Verwendung durch Microsoft reserviert.
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)
Bestimmte Bitflags (0x00300084) werden von Microsoft definiert, sind aber nicht speziell für Systemsoftware reserviert. Im Folgenden sind diese Bitflags aufgeführt.
SV_TYPE_SV_TYPE_SQLSERVER (0x00000004)
SV_TYPE_NOVELL (0x00000080)
SV_TYPE_DOMAIN_CTRL (0x00100000)
SV_TYPE_DOMAIN_BAKCTRL (0x00200000)
Bestimmte Bitflags (0x3FC0C000) werden nicht von Microsoft definiert, und ihre Verwendung wird nicht von Microsoft koordiniert. Entwickler von Anwendungen, die diese Bits verwenden, sollten sich bewusst sein, dass sie auch von anderen Anwendungen verwendet werden können, wodurch ein Konflikt entsteht. Im Folgenden sind diese Bitflags aufgeführt.
0x00004000
0x00008000
0x00400000
0x00800000
0x01000000
0x02000000
0x04000000
0x08000000
0x10000000
0x20000000
[in] bSetBitsOn
Wenn dieser Wert TRUE ist, müssen die Bits in dwServiceBit festgelegt werden. Wenn dieser Wert FALSE ist, müssen die Bits gelöscht werden.
[in] bUpdateImmediately
Wenn dieser Wert TRUE ist, soll der Serverdienst ein sofortiges Update ausführen. Wenn dieser Wert FALSE ist, wird die Aktualisierung nicht sofort ausgeführt.
Rückgabewert
Wenn die Funktion erfolgreich ist, ist der Rückgabewert ungleich Null.
Wenn die Funktion fehlerhaft ist, ist der Rückgabewert null. Um erweiterte Fehlerinformationen zu erhalten, rufen Sie GetLastError auf.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows XP [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2003 [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | lmserver.h |
Bibliothek | Advapi32.lib |
DLL | Advapi32.dll |