Compartir a través de


Función GetServiceDisplayNameA (winsvc.h)

Recupera el nombre para mostrar del servicio especificado.

Sintaxis

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

Parámetros

[in] hSCManager

Identificador de la base de datos del administrador de control de servicios, tal y como devuelve la función OpenSCManager .

[in] lpServiceName

Nombre del servicio. Este nombre es el mismo que el nombre de la clave del Registro del servicio. Es mejor elegir un nombre menor que 256 caracteres.

[out, optional] lpDisplayName

Puntero a un búfer que recibe el nombre para mostrar del servicio. Si se produce un error en la función, este búfer contendrá una cadena vacía.

El tamaño máximo de esta matriz es de 4 000 bytes. Para determinar el tamaño necesario, especifique NULL para este parámetro y 0 para el parámetro lpcchBuffer . Se producirá un error en la función y GetLastError devolverá ERROR_INSUFFICIENT_BUFFER. El parámetro lpcchBuffer recibirá el tamaño necesario.

Este parámetro puede especificar una cadena localizada con el siguiente formato:

@[path]dllname,-strID

La cadena con identificador strID se carga desde dllname; la ruta de acceso es opcional. Para obtener más información, vea RegLoadMUIString.

Windows Server 2003 y Windows XP: Las cadenas localizadas no se admiten hasta Windows Vista.

[in, out] lpcchBuffer

Puntero a una variable que especifica el tamaño del búfer al que apunta lpDisplayName, en TCHAR.

En la salida, esta variable recibe el tamaño del nombre para mostrar del servicio, en caracteres, excepto el carácter de terminación null.

Si el búfer al que apunta lpDisplayName es demasiado pequeño para contener el nombre para mostrar, la función no la almacena. Cuando la función devuelve, lpcchBuffer contiene el tamaño del nombre para mostrar del servicio, excepto el carácter de terminación null.

Valor devuelto

Si las funciones se ejecutan correctamente, el valor devuelto es distinto de cero.

Si la función no se realiza correctamente, el valor devuelto es cero. Para obtener información de error extendida, llame a GetLastError.

Comentarios

Hay dos nombres para un servicio: el nombre del servicio y el nombre para mostrar. El nombre del servicio es el nombre de la clave del servicio en el Registro. El nombre para mostrar es un nombre descriptivo que aparece en la aplicación del panel de control Servicios y se usa con el comando NET START . Para asignar el nombre del servicio al nombre para mostrar, use la función GetServiceDisplayName . Para asignar el nombre para mostrar al nombre del servicio, use la función GetServiceKeyName .

Nota

El encabezado winsvc.h define GetServiceDisplayName como alias que selecciona automáticamente la versión ANSI o Unicode de esta función en función de la definición de la constante de preprocesador UNICODE. La combinación del uso del alias neutro de codificación con código que no es neutral de codificación puede provocar discrepancias que dan lugar a errores de compilación o en tiempo de ejecución. Para obtener más información, vea Convenciones para prototipos de función.

Requisitos

Requisito Value
Cliente mínimo compatible Windows XP [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2003 [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado winsvc.h (incluye Windows.h)
Library Advapi32.lib
Archivo DLL Advapi32.dll

Consulte también

Funciones del servicioGetServiceKeyNameOpenSCManager