PCPFNEVENT_HANDLER回调函数 (portcls.h)

EventHandler 例程处理事件请求。

语法

PCPFNEVENT_HANDLER PcpfneventHandler;

NTSTATUS PcpfneventHandler(
  [in] PPCEVENT_REQUEST EventRequest
)
{...}

参数

[in] EventRequest

指向初始化 PCEVENT_REQUEST 结构的指针

返回值

如果调用成功,事件处理程序将返回STATUS_SUCCESS。 否则,它将返回适当的错误代码。

言论

微型端口驱动程序公开的每个事件都与事件处理程序相关联。 事件处理程序的目的是处理来自端口驱动程序及其客户端的事件请求。 EventRequest 是处理程序的输入参数,其中包含有关该事件的以下信息:

  • 事件集 GUID 和事件 ID。
  • 如何触发事件。
  • 指向目标微型端口对象的指针和 (对于 pin) 流对象。
这类似于属性请求提供的信息类型。

微型端口驱动程序通过其 IMiniport::GetDescription 方法公开其事件处理程序。 此方法输出描述符结构(请参阅 PCFILTER_DESCRIPTOR),该结构定义微型端口驱动程序及其关联的端口驱动程序共同实现的筛选器。 此结构包含指向微型端口驱动程序自动化表(见 PCAUTOMATION_TABLE)的指针,后者又包含指向微型端口驱动程序事件的数组的指针。 每个数组元素都是一个 PCEVENT_ITEM 结构,包含指向事件的处理程序的PCPFNEVENT_HANDLER函数指针。

EventHandler 例程必须驻留在非分页内存中。

要求

要求 价值
目标平台 桌面
标头 portcls.h (包括 Portcls.h)

另请参阅

IMiniport::GetDescription

IPortEvents::AddEventToEventList

IPortEvents::GenerateEventList

PCAUTOMATION_TABLE

PCEVENT_ITEM

PCEVENT_REQUEST

PCFILTER_DESCRIPTOR