estrutura NSPV2_ROUTINE (ws2spi.h)
A estrutura NSPV2_ROUTINE contém informações sobre as funções implementadas por um provedor de provedor de serviços de namespace versão 2 (NSPv2).
Sintaxe
typedef struct _NSPV2_ROUTINE {
DWORD cbSize;
DWORD dwMajorVersion;
DWORD dwMinorVersion;
LPNSPV2STARTUP NSPv2Startup;
LPNSPV2CLEANUP NSPv2Cleanup;
LPNSPV2LOOKUPSERVICEBEGIN NSPv2LookupServiceBegin;
LPNSPV2LOOKUPSERVICENEXTEX NSPv2LookupServiceNextEx;
LPNSPV2LOOKUPSERVICEEND NSPv2LookupServiceEnd;
LPNSPV2SETSERVICEEX NSPv2SetServiceEx;
LPNSPV2CLIENTSESSIONRUNDOWN NSPv2ClientSessionRundown;
} NSPV2_ROUTINE, *PNSPV2_ROUTINE, *LPNSPV2_ROUTINE;
Membros
cbSize
Tipo: DWORD
Especifica o tamanho, em bytes, da estrutura.
dwMajorVersion
Tipo: DWORD
A versão principal da especificação do provedor de serviços compatível com esse provedor.
dwMinorVersion
Tipo: DWORD
A versão secundária da especificação do provedor de serviços compatível com esse provedor.
NSPv2Startup
Tipo: ** LPNSPV2STARTUP**
Um ponteiro para a função NSPv2Startup para esse provedor NSPv2.
NSPv2Cleanup
Tipo: LPNSPV2CLEANUP
Um ponteiro para a função NSPv2Cleanup para esse provedor NSPv2.
NSPv2LookupServiceBegin
Tipo: LPNSPV2LOOKUPSERVICEBEGIN
Um ponteiro para a função NSPv2LookupServiceBegin para esse provedor NSPv2.
NSPv2LookupServiceNextEx
Tipo: LPNSPV2LOOKUPSERVICENEXTEX
Um ponteiro para a função NSPv2LookupServiceNextEx para esse provedor NSPv2.
NSPv2LookupServiceEnd
Tipo: LPNSPV2LOOKUPSERVICEEND
Um ponteiro para a função NSPv2LookupServiceEnd para esse provedor NSPv2.
NSPv2SetServiceEx
Tipo: LPNSPV2SETSERVICEEX
Um ponteiro para a função NSPv2SetServiceEx para esse provedor NSPv2.
NSPv2ClientSessionRundown
Tipo: LPNSPV2CLIENTSESSIONRUNDOWN
Um ponteiro para a função NSPv2ClientSessionRundown para esse provedor NSPv2.
Comentários
A estrutura NSPV2_ROUTINE é usada como parte da arquitetura do provedor de serviços de namespace versão 2 (NSPv2) disponível no Windows Vista e posterior.
No Windows Vista e no Windows Server 2008, a estrutura NSPV2_ROUTINE só pode ser usada para operações em provedores de namespace NS_EMAIL.
A função WSAAdvertiseProvider anuncia uma instância de um provedor NSPv2 para que os clientes encontrem. O chamador WSAAdvertiseProvider passa um ponteiro para uma estrutura NSPV2_ROUTINE no parâmetro pNSPv2Routine com os pontos de entrada NSPv2 compatíveis com o provedor.
Um provedor NSPv2 é necessário para implementar as seguintes funções:
Todas as outras funções são opcionais, dependendo dos requisitos do provedor NSPv2.
Se uma função não for implementada, as chamadas para essa função deverão ser interceptadas por uma função stub que retorna WSAEOPNOTSUPP. O ponteiro da função NSPv2 para a função não simplificada na estrutura NSPV2_ROUTINE deve apontar para a função stub.
Em geral, os provedores NSPv2 são implementados em processos diferentes dos aplicativos de chamada. Os provedores NSPv2 não são ativados como resultado da atividade do cliente. Cada aplicativo de hospedagem do provedor decide quando disponibilizar ou não um provedor específico chamando as funções WSAAdvertiseProvider e WSAUnadvertiseProvider . A atividade do cliente só resulta em tentativas de entrar em contato com o provedor, quando disponível (quando o provedor de namespace é anunciado).
Um processo pode implementar e anunciar vários provedores ao mesmo tempo. O Windows Sockets gerenciará os provedores de namespace expedindo chamadas para o correto. Ele também ocultará os detalhes da interface RPC e converterá chamadas entre processos em chamadas em processo. Para que o provedor NSPv2 tenha apenas que implementar uma tabela de funções de ponto de entrada semelhante à estrutura de NSP_ROUTINE usada por um provedor NSPv1. Um provedor NSPv2 não precisa se preocupar com requisitos específicos do RPC (marshaling de dados e serialização, por exemplo).
A função WSAUnadvertiseProvider torna um provedor de namespace específico não mais disponível para clientes.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows Vista [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows Server 2008 [somente aplicativos da área de trabalho] |
Cabeçalho | ws2spi.h |