Função WSAGetServiceClassNameByClassIdW (winsock2.h)

A função WSAGetServiceClassNameByClassId recupera o nome do serviço associado ao tipo especificado. Esse nome é o nome de serviço genérico, como FTP ou SNA, e não o nome de uma instância específica desse serviço.

Sintaxe

INT WSAAPI WSAGetServiceClassNameByClassIdW(
  [in]      LPGUID  lpServiceClassId,
  [out]     LPWSTR  lpszServiceClassName,
  [in, out] LPDWORD lpdwBufferLength
);

Parâmetros

[in] lpServiceClassId

Um ponteiro para o GUID para a classe de serviço.

[out] lpszServiceClassName

Um ponteiro para o nome do serviço.

[in, out] lpdwBufferLength

Na entrada, o comprimento do buffer retornado por lpszServiceClassName, em caracteres. Na saída, o comprimento do nome do serviço copiado em lpszServiceClassName, em caracteres.

Retornar valor

A função WSAGetServiceClassNameByClassId retornará um valor igual a zero se tiver êxito. Caso contrário, o valor SOCKET_ERROR será retornado e um número de erro específico poderá ser recuperado chamando WSAGetLastError.

Código do erro Significado
WSA_INVALID_PARAMETER
O parâmetro lpServiceClassId especificado é inválido.
WSA_NOT_ENOUGH_MEMORY
Não havia memória suficiente para executar a operação.
WSAEACCES
A rotina de chamada não tem privilégios suficientes para acessar as informações.
WSAEFAULT
O buffer especificado apontado por lpszServiceClassName é muito pequeno. Passe um buffer maior.
WSAENOBUFS
Nenhum espaço de buffer disponível.
WSAEOPNOTSUPP
Não há suporte para a operação para o tipo de objeto referenciado. Esse erro é retornado por alguns provedores de namespace que não dão suporte à obtenção de informações de classe de serviço.
WSANO_DATA
O lpServiceClassId é válido, mas nenhum dado do tipo solicitado foi encontrado.
WSANOTINITIALISED
O WS2_32.DLL não foi inicializado. O aplicativo deve primeiro chamar WSAStartup antes de chamar qualquer função do Windows Sockets.

Comentários

Observação

O cabeçalho winsock2.h define WSAGetServiceClassNameByClassId 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 2000 Professional [aplicativos da área de trabalho | Aplicativos UWP]
Servidor mínimo com suporte Windows 2000 Server [aplicativos da área de trabalho | Aplicativos UWP]
Plataforma de Destino Windows
Cabeçalho winsock2.h
Biblioteca Ws2_32.lib
DLL Ws2_32.dll

Confira também

Wsastartup

Funções Winsock

Referência de Winsock