Поделиться через


Функция 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

См. также

PCSTREAMRESOURCE_DESCRIPTOR

PcRemoveStreamResource