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


Метод IKsControl::KsEvent (ksproxy.h)

Метод KsEvent включает или отключает событие, а также любые другие определенные операции поддержки, доступные в наборе событий.

Синтаксис

HRESULT KsEvent(
  [in, optional] PKSEVENT Event,
  [in]           ULONG    EventLength,
  [in, out]      LPVOID   EventData,
  [in]           ULONG    DataLength,
  [in, out]      ULONG    *BytesReturned
);

Параметры

[in, optional] Event

Указатель на структуру KSEVENT, описывающую событие для включения события и null для отключения события.

[in] EventLength

Размер буфера в события, если событие включено и ноль при отключении события.

[in, out] EventData

Указатель на структуру KSEVENTDATA, содержащую данные для пространства событий и буфера, получающего данные для события.

[in] DataLength

Размер буфера в EventDataв байтах.

[in, out] BytesReturned

Указатель на переменную, которая получает размер в байтах данных, которые KsEvent хранятся в буфере в EventData.

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

Возвращает NOERROR в случае успешного выполнения; в противном случае возвращает код ошибки. Если вызов выполнен успешно, событие находится в списке событий драйвера.

Замечания

Чтобы отключить событие, задайте событиязначение NULL, EventLength равным нулю, а EventData указатель на структуру KSEVENTDATA, которая ранее использовалась для включения события.

Параметр EventDataIKsControl::KsEvent содержит дескриптор в EventHandle.Event. Вы можете ждать, пока дескриптор станет доступным и получать уведомления, когда мини-driver вызывает KsXxxGenerateEvents или StreamClassStreamNotification.

Требования

Требование Ценность
целевая платформа DesktopMobile
заголовка ksproxy.h (включая Ksproxy.h)

См. также

KSEVENT

KSEVENTDATA

KsFilterErateEvents

KsPinGenerateEvents