WSCInstallQOSTemplate 함수(ws2spi.h)

[ 이 함수는 Windows Vista 및 운영 체제의 후속 버전에서 지원되지 않습니다.]

WSCInstallQOSTemplate 함수는 시스템 구성 데이터베이스에 지정된 QoS 템플릿을 설치합니다.

구문

int WSCInstallQOSTemplate(
  [in] const LPGUID Guid,
  [in] LPWSABUF     QosName,
  [in] LPQOS        Qos
);

매개 변수

[in] Guid

QoS(서비스 품질) 공급자에 대한 GUID(Globally Unique Identifier)입니다.

[in] QosName

설치할 템플릿의 QoS 이름을 포함하는 WSABUF 구조체에 대한 포인터입니다.

[in] Qos

서비스 흐름 사양의 품질 및 QoS 템플릿에 대한 공급자별 정보를 지정하는 QOS 구조에 대한 포인터입니다.

반환 값

WSCInstallQOSTemplate 함수가 성공하면 반환 값은 0입니다. 그렇지 않으면 다음 오류 코드 중 하나를 반환합니다.

오류 코드 의미
WSAEFAULT
하나 이상의 인수가 사용자 주소 공간의 유효한 부분에 있지 않습니다.
WSAEINVAL
하나 이상의 인수가 잘못되었습니다. Guid 매개 변수에 지정된 QoS 공급자가 잘못되었거나 QosName 매개 변수에 지정된 QoS 템플릿 이름이 잘못된 경우 이 오류가 반환됩니다. Qos 매개 변수에 지정된 템플릿 구조의 내용이 잘못되었거나 불완전한 경우에도 이 오류가 반환됩니다.
WSAENOBUFS
버퍼에 메모리를 할당할 수 없습니다.
WSANO_RECOVERY
복구할 수 없는 오류가 발생했습니다. 이 오류는 공급자가 이미 설치되어 있거나, 사용자에게 Winsock 레지스트리에 쓰는 데 필요한 관리 권한이 없거나, 카탈로그 항목을 만들거나 설치할 때 오류가 발생하는 등의 여러 조건에서 반환됩니다.
WSASYSCALLFAILURE
실패하지 않아야 하는 시스템 호출이 실패했습니다.
WSA_NOT_ENOUGH_MEMORY
메모리가 부족했습니다. 이 오류는 새 카탈로그 항목을 할당할 메모리가 부족한 경우 반환됩니다.

설명

WSCInstallQOSTemplate 함수는 Windows Vista 이상에서 지원되지 않습니다. 이 함수가 Windows Vista에서 호출되고 오류가 반환되는 경우

WSCInstallQOSTemplate 함수는 QoS 이름을 기반으로 QoS 템플릿을 설치합니다. WSCInstallQOSTemplate 함수의 호출자는 호출이 성공하려면 적절한 관리 권한이 있어야 합니다.

나중에 WSPGetQOSByName 함수를 호출하고 연결된 QoS 이름을 전달하여 QoS 설정을 포함하는 QOS 구조를 검색할 수 있습니다.

WSCInstallQOSTemplate 함수는 를 포함하는 명명된 QoS 템플릿을 설치합니다.
Qos 매개 변수에 지정된 QOS 구조체입니다. QoS 템플릿이 이미 Qosname 매개 변수에 지정된 QoS 이름으로 존재하는 경우 Qos 매개 변수에 지정된 설정이 기존 템플릿의 설정을 대체합니다.

Guid 매개 변수가 NULL로 설정된 경우 설치된 QOS 템플릿이 모든 서비스 공급자에 적용됩니다. Guid 매개 변수가 NULL이 아닌 경우 설치된 QoS 템플릿은 Guid 매개 변수로 표시된 공급자에만 적용됩니다.

QoS 템플릿 설정은 비휘발성 스토리지에 저장되므로 lpQOSName 매개 변수에 지정된 동일한 QoS 이름을 사용하여 WSAGetQOSByName 함수에 대한 후속 호출은 WSCInstallQOSTemplate 함수에 전달된 동일한 QOS 구조를 반환합니다.

Windows 소켓 2에는 기본 QoS 템플릿 집합이 포함되어 있습니다. 기존 이름으로 새 템플릿을 설치하기만 하면 이러한 QoS 템플릿을 재정의하고 바꾸거나 기존 QoS 템플릿을 변경할 수 있습니다. 기존 템플릿을 바꾸거나 수정하기 전에 기존 템플릿을 삭제할 필요가 없습니다. Windows 소켓 2에 포함된 QoS 명명된 템플릿의 기본 집합은 삭제할 수 없습니다. 그러나 나중에 다른 서비스 공급자가 추가한 템플릿을 삭제할 수 있습니다.

Qos 매개 변수는 QOS 구조체의 ProviderSpecific 멤버에 공급자별 설정을 포함하는 버퍼를 포함할 수 있는 QOS 구조를 가리킵니다. 모든 공급자별 설정은 기본 QOS 구조와 함께 저장되며 WSAGetQOSByName 함수에 대한 후속 호출에서 반환됩니다.

모든 서비스 공급자에 대한 전역 QoS 템플릿을 설치하기 위해 Guid 매개 변수가 NULL로 설정된 경우에도 QOS 구조의 ProviderSpecific 멤버를 설정할 수 있습니다. 이 방법은 서비스 공급자가 해당 콘텐츠를 인식하지 못하는 경우 서비스 공급자가 QOS 구조의 ProviderSpecific 멤버를 무시하도록 유도할 수 있습니다. WSCInstallQOSTemplate 함수를 사용하는 것이 좋습니다. 명명된 템플릿이 특정 서비스 공급자에 설치되는 경우에만 QOS 구조의 ProviderSpecific 멤버에 공급자별 설정을 포함합니다(Guid 매개 변수는 NULL이 아님).

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 2000 Professional[데스크톱 앱만]
지원되는 최소 서버 Windows 2000 Server[데스크톱 앱만]
대상 플랫폼 Windows
헤더 ws2spi.h

추가 정보

Qos

WSABUF

WSPGetQOSByName