Compartilhar via


WSPCleanup

Windows Mobile SupportedWindows Embedded CE Supported

9/8/2008

Essa função termina uso do provedor de serviço Soquetes do Windows.

Syntax

int WSPCleanup(
  LPINT lpErrno 
);

Parameters

  • lpErrno
    [out] Ponteiro para o código de erro.

Return Value

O valor de retorno será zero se a operação foi iniciada com êxito. Caso contrário, o valor retornado SOCKET_ERROR e um número de erro específica está disponível em lpErrno.

A seguinte tabela mostra os códigos de erro possível.

Valor de erro Descrição

WSANOTINITIALISED

Um bem-sucedido WSPStartup chamar deve ocorrer antes de usar essa função.

WSAENETDOWN

falha no subsistema de rede.

WSAEINVAL

Identificador provedor fornecido o Nome-espaço provedor não é gerenciado pelo nome-espaço provedor.

Remarks

O cliente Winsock SPI é exigido para executar um bem-sucedido WSPStartup chamar antes que ele possa usar provedores serviço Soquetes do Windows. Quando ele tiver sido concluído o uso de provedores serviço Soquetes do Windows, o cliente SPI irá chamar WSPCleanup Para cancelar o registro próprio de um provedor serviço Soquetes do Windows e permitir que o provedor serviço para livre quaisquer recursos alocados on Behalf Of o cliente sockets do Windows (Winsock). É permissível para que os clientes SPI fazer more than um WSPStartup chamar. Para cada WSPStartup chamar, um correspondente WSPCleanup chamar também será emitido. Somente o final WSPCleanup Para o serviço provedor faz o real limpeza; a acima chama simplesmente diminuição um contagem de referência interno no provedor de serviço Soquetes do Windows.

Quando o contagem de referência interno atingir zero e real operações limpeza começar, qualquer pendente bloqueio ou assíncrono chamadas emitidas por qualquer segmento nesse processo são canceladas sem postando mensagens qualquer notificação ou sinalização quaisquer objetos evento. Qualquer pendente sobreposto enviar e recebe (operaçõesWSPSend, WSPSendTo, WSPRecv, WSPRecvFrom Com um Soquete sobreposta) emitidos por qualquer segmento nesse processo também serão canceladas sem configuração objeto o evento ou chamar a rotina de conclusão, se especificado. Neste maiúsculas e minúsculas, o pendente sobreposto operações falha com o status de erro WSA_OPERATION_ABORTED. Qualquer aberto soquetes quando WSPCleanup é chamado é redefinir e automaticamente desalocada como se WSPCloseSocket foi chamado; Soquetes que foram fechados com WSPCloseSocket mas ainda ter pendente dados para serem enviados não são afetados — o pendente dados ainda são enviados.

Essa função não deve retornar até que o provedor serviço DLL está preparado para ser descarregadas da memória. Em particular, os dados restantes para ser transmitido deve ser já terem sido enviados ou ser enfileirado para transmissão por partes da pilha de transporte que irá Não ser descarregadas da memória along with do o provedor de serviços DLL.

Um provedor serviço Soquetes do Windows deve estar preparado para lidar com um processo que finaliza sem chamar WSPCleanup, de exemplo, as a result of um erro. Um provedor serviço Soquetes do Windows deve garantir que WSPCleanup Deixa itens em um estado no qual a ws2.dll pode imediatamente invocar WSPStartup Para restabelecer o uso Soquetes do Windows.

Requirements

Header ws2spi.h
Library Ws2.lib
Windows Embedded CE Windows CE .NET 4.0 and later
Windows Mobile Windows Mobile Version 5.0 and later

See Also

Reference

WSPStartup
WSPCloseSocket
WSPShutdown