Функция WSCInstallQOSTemplate (ws2spi.h)
[ Эта функция не поддерживается в Windows Vista и последующих версиях операционной системы.]
Функция WSCInstallQOSTemplate устанавливает указанный шаблон QoS в базу данных конфигурации системы.
Синтаксис
int WSCInstallQOSTemplate(
[in] const LPGUID Guid,
[in] LPWSABUF QosName,
[in] LPQOS Qos
);
Параметры
[in] Guid
Глобальный уникальный идентификатор (GUID) для поставщика качества обслуживания (QoS).
[in] QosName
Указатель на структуру WSABUF , содержащую QoS-имя устанавливаемого шаблона.
[in] Qos
Указатель на структуру QOS , которая указывает качество спецификаций потока обслуживания и все сведения, относящиеся к поставщику для шаблона QoS.
Возвращаемое значение
Если функция WSCInstallQOSTemplate завершается успешно, возвращаемое значение равно нулю. В противном случае возвращается один из следующих кодов ошибок.
Код ошибки | Значение |
---|---|
Один или несколько аргументов не входят в допустимую часть адресного пространства пользователя. | |
Один или несколько аргументов являются недопустимыми. Эта ошибка возвращается, если поставщик качества обслуживания, указанный в параметре Guid , недопустим или имя шаблона QoS, указанное в параметре QosName , является недопустимым. Эта ошибка также возвращается, если содержимое структуры шаблона, указанное в параметре Qos , является недопустимым или неполным. | |
Память не может быть выделена для буферов. | |
Произошла неустранимая ошибка. Эта ошибка возвращается при нескольких условиях, включая следующие: поставщик уже установлен, пользователь не имеет прав администратора, необходимых для записи в реестр Winsock, или произошел сбой при создании или установке записи каталога. | |
Системный вызов, который никогда не должен завершаться ошибкой, завершился сбоем. | |
Недостаточно памяти. Эта ошибка возвращается, если памяти недостаточно для выделения новой записи каталога. |
Комментарии
Функция WSCInstallQOSTemplate не поддерживается в Windows Vista и более поздних версиях. Если эта функция вызывается в Windows Vista и возвращается ошибка.
Функция WSCInstallQOSTemplate устанавливает шаблон QoS на основе имени QoS. Вызывающий объект функции WSCInstallQOSTemplate должен иметь соответствующие права администратора для успешного вызова.
Структуру QOS , содержащую параметры QoS, можно получить позже, вызвав функцию WSPGetQOSByName и передав соответствующее имя QoS.
Функция WSCInstallQOSTemplate устанавливает именованный шаблон QoS, содержащий
Структура QOS, указанная в параметре Qos. Если шаблон QoS уже существует с именем QoS, указанным в параметре Qosname , параметры, указанные в параметре Qos , заменяют параметры существующего шаблона.
Если для параметра Guid задано значение NULL, установленный шаблон QOS применяется ко всем поставщикам услуг. Если параметр Guid не равен NULL, установленный шаблон качества обслуживания применяется только к поставщику, указанному параметром Guid .
Параметры шаблона QoS хранятся в неизменяемом хранилище, поэтому последующие вызовы функции WSAGetQOSByName с тем же именем QoS, указанным в параметре lpQOSName , возвращают ту же структуру QOS , которая передается в функцию WSCInstallQOSTemplate .
Windows Sockets 2 включает базовый набор шаблонов качества обслуживания. Вы можете переопределить и заменить любой из этих шаблонов качества обслуживания или изменить существующий шаблон качества обслуживания, просто установив новый шаблон с существующим именем. Перед заменой или изменением существующего шаблона удалять не нужно. Вы не можете удалить базовый набор шаблонов qoS с именами, включенных в сокеты Windows 2. Однако вы можете удалить шаблоны, добавленные впоследствии, возможно, другими поставщиками услуг.
Параметр Qos указывает на структуру QOS , которая может включать буфер, содержащий параметры конкретного поставщика в элементе ProviderSpecific структуры QOS . Все параметры, относящиеся к поставщику, хранятся с базовой структурой QOS и возвращаются в последующих вызовах функции WSAGetQOSByName .
Член ProviderSpecific структуры QOS можно задать, даже если параметр Guid имеет значение NULL , чтобы установить глобальный шаблон качества обслуживания для всех поставщиков услуг. Обратите внимание, что такой подход может привести к тому, что поставщик услуг игнорирует член ProviderSpecific структуры QOS , если поставщик услуг не распознает его содержимое. Рекомендуется использовать функцию WSCInstallQOSTemplate для включения параметров конкретного поставщика в элемент ProviderSpecific структуры QOS , только если именованный шаблон устанавливается в определенном поставщике услуг (параметр Guid не равен NULL).
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 2000 Professional [только классические приложения] |
Минимальная версия сервера | Windows 2000 Server [только классические приложения] |
Целевая платформа | Windows |
Header | ws2spi.h |