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


Метод CMsgThread.ThreadMessageProc

[Функция, связанная с этой страницей DirectShow, является устаревшей функцией. Он был заменен MediaPlayer, IMFMediaEngine, и аудио/ видео захвата в Media Foundation. Эти функции оптимизированы для Windows 10 и Windows 11. Корпорация Майкрософт настоятельно рекомендует, чтобы новый код использовал MediaPlayer, IMFMediaEngine и аудио- и видеозахват в Media Foundation вместо DirectShow, когда это возможно. Корпорация Майкрософт предлагает переписать существующий код, использующий устаревшие API, чтобы по возможности использовать новые API.]

Обрабатывает запросы. Это чистая виртуальная функция-член.

Синтаксис

virtual LRESULT ThreadMessageProc(
   UINT     uMsg,
   DWORD    dwFlags,
   LPVOID   lpParam,
   CAMEvent *pEvent
);

Параметры

uMsg

Код запроса.

dwFlags

Необязательный параметр флага для запроса.

lpParam

Необязательный указатель на дополнительные данные или возвращаемый блок данных.

pEvent

Необязательный указатель на объект события.

Возвращаемое значение

Любое ненулевое возвращение приводит к выходу потока. Возвращает ноль, если запрос на выход не был обработан недавно.

Комментарии

Эта чистая виртуальная функция должна быть переопределена в производном классе. Он будет вызываться один раз для каждого запроса, помещенного в очередь вызовом функции-члена CMsgThread::P utThreadMsg .

Функция-член определяет четыре параметра. Как правило, используйте параметр uMsg для указания запроса, а другие три параметра будут необязательными дополнительными параметрами. Вызывающее приложение может предоставить указатель на объект CAMEvent в параметре pEvent , если это требуется приложению. Это событие необходимо задать после обработки события с помощью такого выражения, как:

pEvent->SetEvent

Один код запроса должен быть выделен, чтобы сообщить рабочему потоку о выходе. Получив этот запрос, верните 1 из этой функции-члена. Если вы не хотите, чтобы рабочий поток выходил из рабочего потока, возвращается значение 0.

Требования

Требование Значение
Заголовок
Msgthrd.h (включая Streams.h)
Библиотека
Strmbase.lib (розничные сборки);
Strmbasd.lib (отладочные сборки)

См. также раздел

Класс CMsgThread