Метод CDynamicOutputPin.Block
[Функция, связанная с этой страницей DirectShow, является устаревшей функцией. Он был заменен MediaPlayer, IMFMediaEngine, и аудио/ видео захвата в Media Foundation. Эти функции оптимизированы для Windows 10 и Windows 11. Корпорация Майкрософт настоятельно рекомендует использовать в новом коде MediaPlayer, IMFMediaEngine и аудио/видеозахват в Media Foundation вместо DirectShow, когда это возможно. Корпорация Майкрософт предлагает переписать существующий код, в котором используются устаревшие API, чтобы по возможности использовать новые API.]
Метод Block
блокирует или разблокирует поток данных из контакта. Этот метод реализует метод IPinFlowControl::Block .
Синтаксис
HRESULT Block(
DWORD dwBlockFlags,
HANDLE hEvent
);
Параметры
-
dwBlockFlags
-
Флаг, указывающий, следует ли блокировать или разблокировать закрепление. Необходимо установить одно из следующих значений.
Ноль: разблокировка потока данных из закрепления.
AM_PIN_FLOW_CONTROL_BLOCK. Блокировка потока данных из закрепления.
-
hEvent
-
Дескриптор объекта события или NULL.
Возвращаемое значение
Возвращает значение HRESULT . Возможные значения включают значения, приведенные в следующей таблице.
Код возврата | Описание |
---|---|
|
Закрепление уже разблокировано. |
|
Успешно. |
|
Недопустимый аргумент. |
|
Закрепление уже заблокировано в другом потоке. |
|
Закрепление уже заблокировано в вызывающем потоке. |
Комментарии
Дополнительные сведения об этом методе см. в разделе IPinFlowControl::Block. Для внутренних целей этот метод вызывает один из следующих защищенных методов:
- Блок (асинхронный): CDynamicOutputPin::AsynchronousBlockOutputPin
- Блок (синхронный): CDynamicOutputPin::SynchronousBlockOutputPin
- Разблокировать: CDynamicOutputPin::UnblockOutputPin
Разблокировка всегда выполняется синхронно.
Требования
Требование | Значение |
---|---|
Заголовок |
|
Библиотека |
|