QueryServiceConfig2A-Funktion (winsvc.h)
Ruft die optionalen Konfigurationsparameter des angegebenen Diensts ab.
Syntax
BOOL QueryServiceConfig2A(
[in] SC_HANDLE hService,
[in] DWORD dwInfoLevel,
[out, optional] LPBYTE lpBuffer,
[in] DWORD cbBufSize,
[out] LPDWORD pcbBytesNeeded
);
Parameter
[in] hService
Ein Handle für den Dienst. Dieses Handle wird von der OpenService-- oder CreateService--Funktion zurückgegeben und muss über das SERVICE_QUERY_CONFIG Zugriffsrecht verfügen. Weitere Informationen finden Sie unter Service Security and Access Rights.
[in] dwInfoLevel
Die konfigurationsinformationen, die abgefragt werden sollen. Dieser Parameter kann einer der folgenden Werte sein:
Wert | Bedeutung |
---|---|
|
Der lpInfo Parameter ist ein Zeiger auf eine SERVICE_DELAYED_AUTO_START_INFO Struktur.
Windows Server 2003 und Windows XP: Dieser Wert wird nicht unterstützt. |
|
Der lpBuffer Parameter ist ein Zeiger auf eine SERVICE_DESCRIPTION Struktur. |
|
Der lpBuffer Parameter ist ein Zeiger auf eine SERVICE_FAILURE_ACTIONS Struktur. |
|
Der lpInfo Parameter ist ein Zeiger auf eine SERVICE_FAILURE_ACTIONS_FLAG Struktur.
Windows Server 2003 und Windows XP: Dieser Wert wird nicht unterstützt. |
|
Der lpInfo Parameter ist ein Zeiger auf eine SERVICE_PREFERRED_NODE_INFO Struktur.
Windows Server 2008, Windows Vista, Windows Server 2003 und Windows XP: Dieser Wert wird nicht unterstützt. |
|
Der lpInfo Parameter ist ein Zeiger auf eine SERVICE_PRESHUTDOWN_INFO Struktur.
Windows Server 2003 und Windows XP: Dieser Wert wird nicht unterstützt. |
|
Der lpInfo Parameter ist ein Zeiger auf eine SERVICE_REQUIRED_PRIVILEGES_INFO Struktur.
Windows Server 2003 und Windows XP: Dieser Wert wird nicht unterstützt. |
|
Der lpInfo Parameter ist ein Zeiger auf eine SERVICE_SID_INFO Struktur.
Windows Server 2003 und Windows XP: Dieser Wert wird nicht unterstützt. |
|
Der lpInfo Parameter ist ein Zeiger auf eine SERVICE_TRIGGER_INFO Struktur.
Windows Server 2008, Windows Vista, Windows Server 2003 und Windows XP: Dieser Wert wird nicht unterstützt. |
|
Der parameter lpInfo ist ein Zeiger einer SERVICE_LAUNCH_PROTECTED_INFO Struktur.
Hinweis Dieser Wert wird ab Windows 8.1 unterstützt.
|
[out, optional] lpBuffer
Ein Zeiger auf den Puffer, der die Dienstkonfigurationsinformationen empfängt. Das Format dieser Daten hängt vom Wert des dwInfoLevel-Parameters ab.
Die maximale Größe dieses Arrays beträgt 8K Bytes. Um die erforderliche Größe zu ermitteln, geben Sie NULL- für diesen Parameter und 0 für den cbBufSize Parameter an. Die Funktion schlägt fehl und GetLastError- gibt ERROR_INSUFFICIENT_BUFFERzurück. Der pcbBytesNeededed Parameter erhält die erforderliche Größe.
[in] cbBufSize
Die Größe der Struktur, auf die der lpBuffer Parameter in Bytes verweist.
[out] pcbBytesNeeded
Ein Zeiger auf eine Variable, die die Anzahl der Zum Speichern der Konfigurationsinformationen erforderlichen Bytes empfängt, wenn die Funktion mit ERROR_INSUFFICIENT_BUFFERfehlschlägt.
Rückgabewert
Wenn die Funktion erfolgreich ist, ist der Rückgabewert ungleich Null.
Wenn die Funktion fehlschlägt, ist der Rückgabewert null. Rufen Sie GetLastErrorauf, um erweiterte Fehlerinformationen zu erhalten.
Die folgenden Fehlercodes können vom Dienststeuerungs-Manager festgelegt werden. Andere können von den Registrierungsfunktionen festgelegt werden, die vom Dienststeuerungs-Manager aufgerufen werden.
Rückgabecode | Beschreibung |
---|---|
|
Das Handle verfügt nicht über das SERVICE_QUERY_CONFIG Zugriffsrecht. |
|
Es gibt mehr Dienstkonfigurationsinformationen, als in den lpBuffer Puffer passen würden. Die Anzahl der Bytes, die zum Abrufen aller Informationen erforderlich sind, wird im pcbBytesNeededed Parameter zurückgegeben. Nichts wird in lpBuffergeschrieben. |
|
Der angegebene Handle ist ungültig. |
Bemerkungen
Die QueryServiceConfig2--Funktion gibt die optionalen Konfigurationsinformationen zurück, die in der Dienststeuerungs-Manager-Datenbank für den angegebenen Dienst gespeichert sind. Sie können diese Konfigurationsinformationen mithilfe der ChangeServiceConfig2--Funktion ändern.
Sie können zusätzliche Konfigurationsinformationen ändern und abfragen, indem Sie die funktionen ChangeServiceConfig bzw. QueryServiceConfig.
Beispiele
Ein Beispiel finden Sie unter Abfragen der Konfigurations-eines Diensts.
Anmerkung
Der winsvc.h-Header definiert QueryServiceConfig2 als Alias, der die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante automatisch auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit Code, der nicht codierungsneutral ist, kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.
Anforderungen
Anforderung | Wert |
---|---|
mindestens unterstützte Client- | Windows XP [nur Desktop-Apps] |
mindestens unterstützte Server- | Windows Server 2003 [Nur Desktop-Apps] |
Zielplattform- | Fenster |
Header- | winsvc.h (enthalten Windows.h) |
Library | Advapi32.lib |
DLL- | Advapi32.dll |
Siehe auch
QueryServiceDynamicInformation-
SERVICE_DELAYED_AUTO_START_INFO