Freigeben über


GetServiceDisplayNameA-Funktion (winsvc.h)

Ruft den Anzeigenamen des angegebenen Diensts ab.

Syntax

BOOL GetServiceDisplayNameA(
  [in]            SC_HANDLE hSCManager,
  [in]            LPCSTR    lpServiceName,
  [out, optional] LPSTR     lpDisplayName,
  [in, out]       LPDWORD   lpcchBuffer
);

Parameter

[in] hSCManager

Ein Handle für die Dienststeuerungs-Manager-Datenbank, wie von der OpenSCManager--Funktion zurückgegeben.

[in] lpServiceName

Der Dienstname. Dieser Name entspricht dem Registrierungsschlüsselnamen des Diensts. Es empfiehlt sich, einen Namen auszuwählen, der kleiner als 256 Zeichen ist.

[out, optional] lpDisplayName

Ein Zeiger auf einen Puffer, der den Anzeigenamen des Diensts empfängt. Wenn die Funktion fehlschlägt, enthält dieser Puffer eine leere Zeichenfolge.

Die maximale Größe dieses Arrays beträgt 4K Bytes. Um die erforderliche Größe zu ermitteln, geben Sie NULL für diesen Parameter und 0 für den lpcchBuffer Parameter an. Die Funktion schlägt fehl, und GetLastError- wird ERROR_INSUFFICIENT_BUFFERzurückgegeben. Der lpcchBuffer Parameter erhält die erforderliche Größe.

Dieser Parameter kann eine lokalisierte Zeichenfolge mit dem folgenden Format angeben:

@[Pfad]dllname,-strID

Die Zeichenfolge mit bezeichner strID wird aus dllnamegeladen; der Pfad optional ist. Weitere Informationen finden Sie unter RegLoadMUIString.

Windows Server 2003 und Windows XP: Lokalisierte Zeichenfolgen werden erst unter Windows Vista unterstützt.

[in, out] lpcchBuffer

Ein Zeiger auf eine Variable, die die Größe des Puffers angibt, auf den lpDisplayNameverweist, in TCHARs.

Bei der Ausgabe empfängt diese Variable die Größe des Anzeigenamens des Diensts in Zeichen, mit Ausnahme des Null-Endzeichens.

Wenn der puffer, auf lpDisplayName verweist, zu klein ist, um den Anzeigenamen zu enthalten, speichert die Funktion ihn nicht. Wenn die Funktion zurückgegeben wird, enthält lpcchBuffer- die Größe des Anzeigenamens des Diensts, mit Ausnahme des Null-Endzeichens.

Rückgabewert

Wenn die Funktionen erfolgreich sind, ist der Rückgabewert ungleich Null.

Wenn die Funktion fehlschlägt, ist der Rückgabewert null. Rufen Sie GetLastErrorauf, um erweiterte Fehlerinformationen zu erhalten.

Bemerkungen

Es gibt zwei Namen für einen Dienst: den Dienstnamen und den Anzeigenamen. Der Dienstname ist der Name des Dienstschlüssels in der Registrierung. Der Anzeigename ist ein benutzerfreundlicher Name, der in der Systemsteuerungsanwendung "Dienste" angezeigt wird und mit dem Befehl NET START verwendet wird. Um den Dienstnamen dem Anzeigenamen zuzuordnen, verwenden Sie die GetServiceDisplayName--Funktion. Um den Anzeigenamen dem Dienstnamen zuzuordnen, verwenden Sie die GetServiceKeyName--Funktion.

Anmerkung

Der winsvc.h-Header definiert GetServiceDisplayName als Alias, der automatisch die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante 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

GetServiceKeyNameOpenSCManagerDienstfunktionen