Функция PcAddStreamResource (portcls.h)
PcAddStreamResource добавляет ресурс потока. Поддерживаются два типа ресурсов потока: прерывания и потоки, принадлежащие драйверу. PcAddStreamResource может вызываться любым драйвером минипорта WaveRT, который имеет прерывания или потоки, связанные с аудиопотоком. Он также может вызываться драйверами минипорта Audio WaveRT.
Синтаксис
PORTCLASSAPI NTSTATUS PcAddStreamResource(
[in] PDEVICE_OBJECT PhysicalDeviceObject,
[in] PVOID ResourceSet,
[in] PPCSTREAMRESOURCE_DESCRIPTOR ResourceDescriptor,
[out] PCSTREAMRESOURCE *ResourceHandle
);
Параметры
[in] PhysicalDeviceObject
PDEVICE_OBJECT — PDO стека устройств с помощью этого ресурса.
[in] ResourceSet
PVOID — зарезервировано для дальнейшего использования, задайте значение NULL. В настоящее время поддерживаются только ресурсы с областью действия устройства.
[in] ResourceDescriptor
PPCSTREAMRESOURCE_DESCRIPTOR — добавляемый ресурс. Дополнительные сведения см. в PCSTREAMRESOURCE_DESCRIPTOR.
[out] ResourceHandle
PCSTREAMRESOURCE* — расположение, которое будет содержать дескриптор ресурса. Дополнительные сведения см. в разделе PcRemoveStreamResource.
Возвращаемое значение
STATUS_SUCCESS — драйвер смог зарегистрировать ресурс указанного PDO.
STATUS_INVALID_PARAMETER . Драйвер возвращает эту ошибку, если он находит любой другой недопустимый параметр, помимо конкретных случаев для других экземпляров состояния ошибки.
Могут быть возвращены дополнительные стандартные коды состояния.
Замечания
Чтобы обеспечить работу без сбоев, звуковые драйверы должны зарегистрировать свои ресурсы потоковой передачи с помощью портов. Это позволяет ОС управлять ресурсами, чтобы избежать помех между потоковой передачей звука и другими подсистемами.
Потоковые ресурсы — это все ресурсы, используемые звуковым драйвером для обработки аудиопотоков или обеспечения потока аудиопотоков.
Все звуковые драйверы должны зарегистрировать ресурсы потоковой передачи с помощью драйвера класса аудио. Драйвер регистрирует следующие типы ресурсов: прерывания, потоки, принадлежащие драйверу, и зависимости от других ресурсов стека звука (например, параллельные стеки звуковых драйверов). Дополнительные сведения см. в определении PCSTREAMRESOURCE_DESCRIPTOR.
Звуковой драйвер должен убедиться, что ресурс действителен при выполнении этого вызова.
Звуковые драйверы, которые работают только в Windows 10, могут использовать PcAddStreamResource и PcRemoveStreamResource. Для драйверов минипорта Audio WaveRT, которые также должны выполняться в предыдущих версиях Windows, используйте AddStreamResource и RemoveStreamResource.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Windows 10 |
минимальный поддерживаемый сервер | Windows Server 2016 |
целевая платформа | Виндоус |
заголовка | portcls.h |
библиотеки | Portcls.lib |
DLL | NA |
IRQL | PASSIVE_LEVEL |