KSQUERYBUFFER 结构 (ks.h)

查询具有KSEVENT_TYPE_QUERYBUFFER的事件上可用的未完成缓冲区时,使用 KSQUERYBUFFER 结构。

语法

typedef struct {
  KSEVENT      Event;
  PKSEVENTDATA EventData;
  PVOID        Reserved;
} KSQUERYBUFFER, *PKSQUERYBUFFER;

成员

Event

指定原始事件的说明,并设置 KSEVENT_TYPE_QUERYBUFFER 标志而不是 KSEVENT_TYPE_ENABLEBUFFERED 标志。

EventData

指向 KSEVENTDATA 结构的指针。 这是在事件启用时提供给 AVStrMiniAddEvent 的同一指针。 此指针用作查找事件的唯一标识符,就像禁用事件时一样。

Reserved

未使用,并设置为零。

注解

如果使用 KSEVENT_TYPE_ENABLEBUFFERED 启用同时缓冲数据的事件,则可以使用此方法查询事件生成的数据。 要查询的事件的说明作为第一个参数提供,任何缓冲区都作为查询的第二个参数提供。

可以通过提供零长度输出缓冲区来查询所需的缓冲区长度。 BytesReturned 参数中返回缓冲区的大小,警告状态为STATUS_BUFFER_OVERFLOW

或者,查询返回以下状态值之一:

返回值 说明
STATUS_NOT_FOUND 找不到事件
STATUS_INVALID_PARAMETER 未对其进行缓冲
STATUS_NO_MORE_ENTRIES 没有可用的缓冲区
STATUS_BUFFER_TOO_SMALL 缓冲区大小不足。
STATUS_SUCCESS 生活是美好的。

要求

要求
Header ks.h (包括 Ks.h)

另请参阅

KSBUFFER_ITEM

KSEVENT