다음을 통해 공유


WSCDeinstallProvider32 함수(ws2spi.h)

WSCDeinstallProvider32 함수는 시스템 구성 데이터베이스에서 지정된 32비트 전송 공급자를 제거합니다.

참고 이 호출을 사용하면 64비트 컴퓨터에서 WSCDeinstallProvider가 네이티브 64비트 Windows 소켓 카탈로그만 조작하므로 64비트 프로세스가 32비트 Winsock 카탈로그를 조작할 수 있습니다.

 

구문

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

매개 변수

[in] lpProviderId

공급자에 대한 GUID(Globally Unique Identifier)에 대한 포인터입니다. 이 값은 각 WSAProtocol_Info 구조 내에 저장됩니다.

[out] lpErrno

함수가 실패하는 경우 오류 코드에 대한 포인터입니다.

반환 값

오류가 발생하지 않으면 WSCDeinstallProvider32 는 0을 반환합니다. 그렇지 않으면 SOCKET_ERROR 반환되고 lpErrno에서 특정 오류 코드를 사용할 수 있습니다.

오류 코드 의미
WSAEINVAL
lpProviderId 매개 변수는 유효한 공급자를 지정하지 않습니다.
WSAEFAULT
lpErrno 매개 변수가 사용자 주소 공간의 유효한 부분에 있지 않습니다.
WSANO_RECOVERY
복구할 수 없는 오류가 발생했습니다. 이 오류는 다음과 같은 여러 조건에서 반환됩니다. 사용자가 Windows 소켓 레지스트리에 쓰는 데 필요한 관리 권한이 없거나 카탈로그 항목을 열 때 오류가 발생했습니다.
WSA_NOT_ENOUGH_MEMORY
메모리가 부족했습니다. 이 오류는 새 카탈로그 항목을 할당할 메모리가 부족한 경우 반환됩니다.

설명

WSCDeinstallProvider32 는 엄격하게 32비트 버전의 WSCDeinstallProvider입니다. 64비트 컴퓨터에서 모든 호출은 특별히 32비트(예: "32"로 끝나지 않는 모든 함수)가 아닌 네이티브 64비트 카탈로그에서 작동합니다. 64비트 컴퓨터에서 실행되는 프로세스는 특정 32비트 함수 호출을 사용하여 엄격하게 32비트 카탈로그에서 작동하고 호환성을 유지해야 합니다. 특정 32비트 호출의 정의 및 의미 체계는 네이티브 호출과 동일합니다.

WSCDeinstallProvider32 함수는 지정된 32비트 공급자에 대한 일반적인 Windows Sockets 2 구성 정보를 제거합니다. 이 루틴이 성공적으로 완료되면 레지스트리에 저장된 구성 정보가 변경됩니다. 그러나 현재 메모리에 있는 Ws2_32.dll 인스턴스는 이 변경 내용을 인식할 수 없습니다.

성공하면 WSCDeinstallProvider32WSAProviderConfigChange를 호출하여 변경 알림을 위해 등록된 모든 관심 있는 애플리케이션에 경고를 시도합니다.

WSCDeinstallProvider32 함수는 관리자 그룹의 구성원으로 로그온한 사용자만 호출할 수 있습니다. Administrators 그룹의 멤버가 아닌 사용자가 WSCDeinstallProvider32를 호출하면 함수 호출이 실패하고 WSANO_RECOVERY lpErrno 매개 변수 에 반환됩니다.

Windows Vista 또는 Windows Server 2008을 실행하는 컴퓨터의 경우 UAC(사용자 계정 제어)로 인해 이 함수가 실패할 수도 있습니다. 이 함수를 포함하는 애플리케이션이 기본 제공 관리자가 아닌 Administrators 그룹의 구성원으로 로그온한 사용자에 의해 실행되는 경우 애플리케이션이 requestedExecutionLevelrequireAdministrator로 설정된 매니페스트 파일에 표시되지 않는 한 이 호출은 실패합니다. Windows Vista 또는 Windows Server 2008의 애플리케이션에 이 매니페스트 파일이 없는 경우 기본 제공 관리자가 아닌 Administrators 그룹의 구성원으로 로그온한 사용자는 이 함수가 성공하려면 기본 제공 관리자(RunAs 관리자)로 향상된 셸에서 애플리케이션을 실행해야 합니다.

이 함수의 호출자는 서비스 공급자를 완전히 제거하는 데 필요한 추가 파일 또는 서비스 공급자 관련 구성 정보를 제거해야 합니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows Vista, Windows XP Professional x64 Edition [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2008, Windows Server 2003 x64 Edition [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 ws2spi.h
라이브러리 Ws2_32.lib
DLL Ws2_32.dll

추가 정보

WSAProviderConfigChange

WSCDeinstallProvider

WSCEnumProtocols32

WSCInstallProvider64_32