다음을 통해 공유


WSCInstallNameSpace32 함수(ws2spi.h)

WSCInstallNameSpace32 함수는 지정된 32비트 네임스페이스 공급자를 설치합니다. 여러 네임스페이스를 지원할 수 있는 공급자의 경우 지원되는 각 네임스페이스에 대해 이 함수를 호출해야 하며 매번 고유한 공급자 식별자를 제공해야 합니다.

참고 이 호출은 64비트 플랫폼에서 사용할 WSCInstallNameSpace 의 엄격한 32비트 버전입니다. 64비트 프로세스가 32비트 카탈로그에 액세스할 수 있도록 제공됩니다.

 

구문

INT WSCInstallNameSpace32(
  [in] LPWSTR lpszIdentifier,
  [in] LPWSTR lpszPathName,
  [in] DWORD  dwNameSpace,
  [in] DWORD  dwVersion,
  [in] LPGUID lpProviderId
);

매개 변수

[in] lpszIdentifier

lpProviderId 매개 변수에 전달된 GUID(Globally Unique Identifier)와 연결된 공급자를 식별하는 문자열에 대한 포인터입니다.

[in] lpszPathName

공급자의 DLL 이미지에 대한 경로가 포함된 문자열에 대한 포인터입니다. 문자열은 경로 확인에 대한 일반적인 규칙을 준수합니다. 이 경로에는 포함된 환경 문자열(예: %SystemRoot%)이 포함될 수 있습니다. 이러한 환경 문자열은 WS2_32.DLL 이후에 애플리케이션을 대신하여 공급자 DLL을 로드해야 할 때마다 확장됩니다. 포함된 환경 문자열이 확장되면 Ws2_32.dll 결과 문자열을 LoadLibrary 함수에 전달하여 공급자를 메모리에 로드합니다. 자세한 내용은 LoadLibrary를 참조하세요.

[in] dwNameSpace

이 공급자가 지원하는 네임스페이스를 지정하는 설명자입니다.

[in] dwVersion

공급자의 버전 번호를 지정하는 설명자입니다.

[in] lpProviderId

이 공급자의 고유 식별자입니다. 이 GUID는 Uuidgen.exe 생성해야 합니다.

반환 값

오류가 발생하지 않으면 WSCInstallNameSpace32 함수는 NO_ERROR(0)을 반환합니다. 그렇지 않으면 함수가 실패하면 SOCKET_ERROR 반환하고 WSAGetLastError 함수를 사용하여 적절한 오류 코드를 검색해야 합니다.

오류 코드 의미
WSAEACCES
호출 루틴에는 네임스페이스를 설치할 수 있는 충분한 권한이 없습니다.
WSAEINVAL
하나 이상의 인수가 잘못되었습니다.
WSANO_RECOVERY
복구할 수 없는 오류가 발생했습니다. 이 오류는 공급자가 이미 설치되어 있거나, 사용자가 Winsock 레지스트리에 쓰는 데 필요한 관리 권한이 없거나, 카탈로그 항목을 만들거나 설치할 때 오류가 발생하는 등의 여러 조건에서 반환됩니다.
WSASYSCALLFAILURE
실패하지 않아야 하는 시스템 호출이 실패했습니다.
WSA_NOT_ENOUGH_MEMORY
메모리가 부족했습니다. 이 오류는 새 카탈로그 항목을 할당할 메모리가 부족한 경우 반환됩니다.

설명

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

네임스페이스 구성 함수는 이미 실행 중인 애플리케이션에 영향을 미치지 않습니다. 새로 설치된 네임스페이스 공급자는 애플리케이션에 표시되지 않으며 네임스페이스 공급자의 활성화 상태가 변경되지 않습니다. WSCInstallNameSpace32 호출 후 시작된 애플리케이션은 변경 내용을 인식합니다.

WSCInstallNameSpace32 함수는 Administrators 그룹의 구성원으로 로그온한 사용자만 호출할 수 있습니다. Administrators 그룹의 구성원이 아닌 사용자가 WSCInstallNameSpace32 를 호출하면 함수 호출이 실패합니다. Windows Vista 또는 Windows Server 2008을 실행하는 컴퓨터의 경우 UAC(사용자 계정 제어)로 인해 이 함수가 실패할 수도 있습니다. 이 함수를 포함하는 애플리케이션이 기본 제공 관리자가 아닌 Administrators 그룹의 구성원으로 로그온한 사용자에 의해 실행되는 경우 애플리케이션이 requireAdministrator로 설정된 requestedExecutionLevel이 매니페스트 파일에 표시되지 않는 한 이 호출은 실패합니다. 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

추가 정보

WSCDeinstallProvider32

WSCEnumProtocols32

WSCInstallNameSpace

WSCInstallNameSpaceEx32

WSCUnInstallNameSpace32