The KSEVENT structure specifies a single kernel streaming event within a kernel streaming event set.
The KSEVENT, KSMETHOD, and KSPROPERTY structures are aliases for the KSIDENTIFIER structure. 因此,它们的定义是相同的。
Syntax
struct KSEVENT {
GUID Set;
ULONG Id;
ULONG Flags;
};
Members
Set
指定标识内核流式处理事件集的 GUID。
For more information about event set GUIDs, see the Remarks section below.
Id
指定事件集的成员。
Flags
指定请求类型。
此标志应为下表中列出的值之一。
| Value | Description |
|---|---|
| KSEVENT_TYPE_ENABLE | 为此事件类型启用事件通知。 驱动程序会继续执行事件通知,直到客户端显式禁用它。 |
| KSEVENT_TYPE_ONESHOT | 仅启用此事件的下一个匹配项的事件通知。 客户端不需要(且不应)在事件发生后禁用该事件。 |
| KSEVENT_TYPE_SETSUPPORT | 查询事件集列表或支持特定事件集。 |
| KSEVENT_TYPE_BASICSUPPORT | 查询以支持特定事件类型。 |
| KSEVENT_TYPE_ENABLEBUFFERED | 驱动程序不通知客户端,而是对事件通知进行排队。 The client then issues a second IOCTL_KS_ENABLE_EVENT request with the KSEVENT_TYPE_QUERYBUFFER to receive the queued event notifications. |
| KSEVENT_TYPE_TOPOLOGY | Indicates that the event passed is of type KSE_NODE, where NodeId indicates the numeric ID of the topology node. 请勿自行设置此标志;而是使用此列表中的其他标志进行 OR。 |
| KSEVENT_TYPE_QUERYBUFFER | 检索下一个缓冲事件通知。 |
Remarks
Microsoft提供了多个系统定义的事件集 GUID。 Minidrivers specify one of these GUIDs in the Set member. Kernel streaming event sets typically begin with a KSEVENTSETID prefix. Kernel streaming event sets are defined in ks.h, ksmedia.h, bdamedia.h, and possibly other header files.
有关内核流式处理事件的详细信息,请参阅 KS 属性、事件和方法。
Requirements
Header: ks.h (include Ks.h)