Compartilhar via


LPNSPV2CLEANUP função de retorno de chamada (ws2spi.h)

A função NSPv2Cleanup notifica um provedor de provedor de serviços de namespace versão 2 (NSPv2) de que uma sessão de cliente foi encerrada.

Sintaxe

LPNSPV2CLEANUP Lpnspv2cleanup;

INT Lpnspv2cleanup(
  [in] LPGUID lpProviderId,
  [in] LPVOID pvClientSessionArg
)
{...}

Parâmetros

[in] lpProviderId

Um ponteiro para o GUID do provedor de namespace a ser notificado.

[in] pvClientSessionArg

Um ponteiro para a sessão do cliente.

Valor retornado

A função deverá retornar NO_ERROR (zero) se a rotina for bem-sucedida. Ele deverá retornar SOCKET_ERROR (ou seja, 1) se a rotina falhar e precisar definir o código de erro apropriado usando WSASetLastError.

Código do erro Significado
WSA_NOT_ENOUGH_MEMORY
Não há memória suficiente disponível para executar essa operação.
WSAEACCES
A rotina de chamada não tem privilégios suficientes para inicializar o serviço.
WSAEINVAL
Um ou mais parâmetros eram inválidos ou ausentes para esse provedor.
WSAEOPNOTSUPP
A operação não tem suporte. Esse erro será retornado se o provedor de namespace não implementar essa função.
WSASERVICE_NOT_FOUND
O serviço é desconhecido. O serviço não pode ser encontrado no namespace especificado.

Comentários

A função NSPv2Cleanup é 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 função NSPv2Cleanup só pode ser usada para operações em provedores de namespace NS_EMAIL.

A função NSPv2Startup é chamada sempre que um novo processo de cliente começa a usar o provedor de namespace. Os provedores podem usar o argumento de sessão do cliente apontado pelo parâmetro ppvClientSessionArg para armazenar informações sobre essa sessão. Se um valor tiver sido especificado para o argumento de sessão do cliente na chamada para a função NSPv2Startup , esse mesmo argumento de sessão do cliente poderá ser passado no parâmetro pvClientSessionArg para a função NSPv2Cleanup para notificar o provedor de namespace de que a sessão do cliente foi encerrada.

A função NSPv2Cleanup é chamada quando um aplicativo é concluído usando um provedor de serviços de namespace do Windows Sockets. O NSPv2Cleanup permite que o provedor de namespace libere qualquer um dos recursos do provedor de namespace que foram alocados para a sessão do cliente.

A função NSPv2Startup deve ser chamada com êxito antes de chamar a função NSPv2Cleanup . É permitido fazer mais de uma chamada NSPv2Startup . No entanto, para cada chamada NSPv2Startup , uma chamada NSPv2Cleanup correspondente também deve ser emitida. Somente o NSPv2Cleanup final para o provedor de serviços faz a limpeza real; as chamadas anteriores decrementam uma contagem de referência interna no provedor de serviços.

As funções NSPv2Startup, NSPv2ClientSessionRundown e NSPv2Cleanup são opcionais, dependendo dos requisitos do provedor NSPv2.

Se a função NSPv2Cleanup 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 NSPv2Cleanup não implementada na estrutura NSPV2_ROUTINE deve apontar para a função stub.

Requisitos

   
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]
Plataforma de Destino Windows
Cabeçalho ws2spi.h

Confira também

NSPV2_ROUTINE

NSPv2ClientSessionRundown

NSPv2LookupServiceBegin

NSPv2LookupServiceEnd

NSPv2LookupServiceNextEx

NSPv2SetServiceEx

NSPv2Startup

WSAQUERYSET2

WSASetLastError