Метод 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 в случае успешного выполнения; в противном случае возвращает код ошибки. Если вызов завершается успешно, событие будет в списке событий драйвера.

Комментарии

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

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

Требования

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

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

KSEVENT

KSEVENTDATA

KsFilterGenerateEvents

KsPinGenerateEvents