Função GetServiceDisplayNameA (winsvc.h)

Recupera o nome de exibição do serviço especificado.

Sintaxe

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

Parâmetros

[in] hSCManager

Um identificador para o banco de dados do gerenciador de controle de serviço, conforme retornado pela função OpenSCManager .

[in] lpServiceName

O nome do serviço. Esse nome é o mesmo que o nome da chave do Registro do serviço. É melhor escolher um nome com menos de 256 caracteres.

[out, optional] lpDisplayName

Um ponteiro para um buffer que recebe o nome de exibição do serviço. Se a função falhar, esse buffer conterá uma cadeia de caracteres vazia.

O tamanho máximo dessa matriz é de 4K bytes. Para determinar o tamanho necessário, especifique NULL para esse parâmetro e 0 para o parâmetro lpcchBuffer . A função falhará e GetLastError retornará ERROR_INSUFFICIENT_BUFFER. O parâmetro lpcchBuffer receberá o tamanho necessário.

Esse parâmetro pode especificar uma cadeia de caracteres localizada usando o seguinte formato:

@[path]dllname,-strID

A cadeia de caracteres com o strID do identificador é carregada de dllname; o caminho é opcional. Para obter mais informações, consulte RegLoadMUIString.

Windows Server 2003 e Windows XP: Não há suporte para cadeias de caracteres localizadas até o Windows Vista.

[in, out] lpcchBuffer

Um ponteiro para uma variável que especifica o tamanho do buffer apontado por lpDisplayName, em TCHARs.

Na saída, essa variável recebe o tamanho do nome de exibição do serviço, em caracteres, excluindo o caractere de terminação nula.

Se o buffer apontado por lpDisplayName for muito pequeno para conter o nome de exibição, a função não o armazenará. Quando a função retorna, lpcchBuffer contém o tamanho do nome de exibição do serviço, excluindo o caractere de terminação nula.

Retornar valor

Se as funções forem bem-sucedidas, o valor retornado será diferente de zero.

Se a função falhar, o valor retornado será zero. Para obter informações de erro estendidas, chame GetLastError.

Comentários

Há dois nomes para um serviço: o nome do serviço e o nome de exibição. O nome do serviço é o nome da chave do serviço no registro. O nome de exibição é um nome amigável que aparece no aplicativo painel de controle Serviços e é usado com o comando NET START . Para mapear o nome do serviço para o nome de exibição, use a função GetServiceDisplayName . Para mapear o nome de exibição para o nome do serviço, use a função GetServiceKeyName .

Observação

O cabeçalho winsvc.h define GetServiceDisplayName como um alias que seleciona automaticamente a versão ANSI ou Unicode dessa função com base na definição da constante de pré-processador UNICODE. Misturar o uso do alias neutro de codificação com código que não seja neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Convenções para protótipos de função.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows XP [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2003 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho winsvc.h (inclua Windows.h)
Biblioteca Advapi32.lib
DLL Advapi32.dll

Confira também

Funções de serviçoGetServiceKeyNameOpenSCManager