Função WSCDeinstallProvider32 (ws2spi.h)

A função WSCDeinstallProvider32 remove o provedor de transporte de 32 bits especificado do banco de dados de configuração do sistema.

Nota Essa chamada permite que um processo de 64 bits manipule o catálogo winsock de 32 bits porque o WSCDeinstallProvider, em computadores de 64 bits, manipula apenas o catálogo nativo do Windows Sockets de 64 bits.

 

Sintaxe

int WSCDeinstallProvider32(
  [in]  LPGUID lpProviderId,
  [out] LPINT  lpErrno
);

Parâmetros

[in] lpProviderId

Um ponteiro para um GUID (identificador global exclusivo) para o provedor. Esse valor é armazenado em cada estrutura WSAProtocol_Info .

[out] lpErrno

Um ponteiro para o código de erro se a função falhar.

Retornar valor

Se nenhum erro ocorrer, WSCDeinstallProvider32 retornará zero. Caso contrário, ele retornará SOCKET_ERROR e um código de erro específico estará disponível em lpErrno.

Código do erro Significado
WSAEINVAL
O parâmetro lpProviderId não especifica um provedor válido.
WSAEFAULT
O parâmetro lpErrno não está em uma parte válida do espaço de endereço do usuário.
WSANO_RECOVERY
Ocorreu um erro não recuperável. Esse erro é retornado sob várias condições, incluindo o seguinte: o usuário não tem os privilégios administrativos necessários para gravar no registro do Windows Sockets ou ocorreu uma falha ao abrir uma entrada de catálogo.
WSA_NOT_ENOUGH_MEMORY
Memória insuficiente disponível. Esse erro é retornado quando não há memória suficiente para alocar uma nova entrada de catálogo.

Comentários

WSCDeinstallProvider32 é uma versão estritamente de 32 bits do WSCDeinstallProvider. Em um computador de 64 bits, todas as chamadas não são especificamente de 32 bits (por exemplo, todas as funções que não terminam em "32") operam no catálogo nativo de 64 bits. Os processos executados em um computador de 64 bits devem usar as chamadas de função específicas de 32 bits para operar em um catálogo estritamente de 32 bits e preservar a compatibilidade. As definições e a semântica das chamadas específicas de 32 bits são as mesmas que suas contrapartes nativas.

A função WSCDeinstallProvider32 remove as informações comuns de configuração do Windows Sockets 2 para o provedor de 32 bits especificado. Depois que essa rotina for concluída com êxito, as informações de configuração armazenadas no registro serão alteradas. No entanto, todas as instâncias Ws2_32.dll atualmente na memória não poderão reconhecer essa alteração.

Em caso de êxito, o WSCDeinstallProvider32 tentará alertar todos os aplicativos interessados que se registraram para notificação da alteração chamando WSAProviderConfigChange.

A função WSCDeinstallProvider32 só pode ser chamada por um usuário conectado como membro do grupo Administradores. Se WSCDeinstallProvider32 for chamado por um usuário que não é membro do grupo Administradores, a chamada de função falhará e WSANO_RECOVERY será retornado no parâmetro lpErrno .

Para computadores que executam o Windows Vista ou o Windows Server 2008, essa função também pode falhar devido ao UAC (controle de conta de usuário). Se um aplicativo que contém essa função for executado por um usuário conectado como um membro do grupo Administradores diferente do Administrador interno, essa chamada falhará, a menos que o aplicativo tenha sido marcado no arquivo de manifesto com um requestedExecutionLevel definido como requireAdministrator. Se o aplicativo no Windows Vista ou no Windows Server 2008 não tiver esse arquivo de manifesto, um usuário conectado como membro do grupo Administradores que não seja o Administrador interno deverá executar o aplicativo em um shell aprimorado como administrador interno (administrador RunAs) para que essa função tenha êxito.

O chamador dessa função deve remover quaisquer arquivos adicionais ou informações de configuração específicas do provedor de serviços necessárias para desinstalar completamente o provedor de serviços.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows Vista, Windows XP Professional x64 Edition [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2008, Windows Server 2003 x64 Edition [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho ws2spi.h
Biblioteca Ws2_32.lib
DLL Ws2_32.dll

Confira também

WSAProviderConfigChange

WSCDeinstallProvider

WSCEnumProtocols32

WSCInstallProvider64_32