Funções getservbyname e getservbyport na API
O getservbyname e funções de getservbyport usam a função WSALookupServiceBegin para consultar SVCID_INET_SERVICEBYNAME como o GUID da classe de serviço. O membro lpszServiceInstanceName na estrutura deWSAQUERYSETpassada para a função WSALookupServiceBegin faz referência a uma cadeia de caracteres para indicar o nome do serviço ou a porta de serviço e, (opcionalmente), o protocolo de serviço. A formatação da string é ilustrada como FTP ou TCP ou 21/TCP ou apenas FTP. A cadeia de caracteres não diferencia maiúsculas de minúsculas. A barra marca, se presente, separa o identificador de protocolo da parte anterior da cadeia de caracteres. O Ws2_32.dll especificará LUP_RETURN_BLOB e o provedor de namespace colocará uma estrutura de SERVENT no blob (usando deslocamentos em vez de ponteiros, conforme descrito acima). Os provedores de namespace também devem honrar esses outros sinalizadores LUP_RETURN_*.
Bandeira | Descrição |
---|---|
LUP_RETURN_NAME | Retorna o membro s_name de estrutura de SERVENT em lpszServiceInstanceName. |
LUP_RETURN_TYPE | Retorna GUID canônico em lpServiceClassId Entende-se que um serviço identificado como FTP ou 21 pode estar em outra porta de acordo com convenções estabelecidas localmente. O parâmetro s_port da estruturaSERVENT deve indicar onde o serviço pode ser contactado no ambiente local. O GUID canônico retornado quando LUP_RETURN_TYPE é definido deve ser um dos GUIDs predefinidos de Svcs.h que corresponde ao número da porta indicado na estrutura SERVENT. |
Tópicos relacionados