Partager via


GetServiceDisplayNameA, fonction (winsvc.h)

Récupère le nom complet du service spécifié.

Syntaxe

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

Paramètres

[in] hSCManager

Handle de la base de données du gestionnaire de contrôle de service, tel qu’il est retourné par la fonction OpenSCManager.

[in] lpServiceName

Nom du service. Ce nom est identique au nom de clé de Registre du service. Il est préférable de choisir un nom inférieur à 256 caractères.

[out, optional] lpDisplayName

Pointeur vers une mémoire tampon qui reçoit le nom d’affichage du service. Si la fonction échoue, cette mémoire tampon contient une chaîne vide.

La taille maximale de ce tableau est de 4 000 octets. Pour déterminer la taille requise, spécifiez NULL pour ce paramètre et 0 pour le paramètre lpcchBuffer. La fonction échoue et GetLastError retourne ERROR_INSUFFICIENT_BUFFER. Le paramètre lpcchBuffer reçoit la taille requise.

Ce paramètre peut spécifier une chaîne localisée au format suivant :

@[path]dllname,-strID

La chaîne avec identificateur strID est chargée à partir de dllname; le chemin d’accès est facultatif. Pour plus d’informations, consultez RegLoadMUIString.

Windows Server 2003 et Windows XP : chaînes localisées ne sont pas prises en charge tant que Windows Vista n’est pas pris en charge.

[in, out] lpcchBuffer

Pointeur vers une variable qui spécifie la taille de la mémoire tampon pointée par lpDisplayName, dans TCHAR.

En sortie, cette variable reçoit la taille du nom d’affichage du service, en caractères, à l’exclusion du caractère de fin null.

Si la mémoire tampon pointée par lpDisplayName est trop petite pour contenir le nom complet, la fonction ne la stocke pas. Lorsque la fonction est retournée, lpcchBuffer contient la taille du nom d’affichage du service, à l’exclusion du caractère de fin null.

Valeur de retour

Si les fonctions réussissent, la valeur de retour est différente de zéro.

Si la fonction échoue, la valeur de retour est égale à zéro. Pour obtenir des informations d’erreur étendues, appelez GetLastError.

Remarques

Il existe deux noms pour un service : le nom du service et le nom complet. Le nom du service est le nom de la clé du service dans le Registre. Le nom d’affichage est un nom convivial qui apparaît dans l’application du panneau de configuration services et qui est utilisé avec la commande NET START. Pour mapper le nom du service au nom complet, utilisez la fonction GetServiceDisplayName. Pour mapper le nom complet au nom du service, utilisez la fonction GetServiceKeyName.

Note

L’en-tête winsvc.h définit GetServiceDisplayName comme alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. Le mélange de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.

Exigences

Exigence Valeur
client minimum pris en charge Windows XP [applications de bureau uniquement]
serveur minimum pris en charge Windows Server 2003 [applications de bureau uniquement]
plateforme cible Windows
d’en-tête winsvc.h (inclure Windows.h)
bibliothèque Advapi32.lib
DLL Advapi32.dll

Voir aussi

GetServiceKeyNameOpenSCManagerService Functions