PosCxPutPendingEvent 函数 (poscx.h)

PosCxPutPendingEvent 创建新的事件对象,将事件数据复制到新的事件对象,并尝试将其委托给等待调用方。 如果目标调用方没有正在等待的读取请求,则会将新事件添加到指定的事件队列(控制或数据)。

语法

NTSTATUS PosCxPutPendingEvent(
  [in] WDFDEVICE               device,
  [in] ULONG                   deviceInterfaceTag,
  [in] ULONG                   eventType,
  [in] size_t                  rawEventDataSize,
       PVOID                   rawEventDataPtr,
  [in] POS_CX_EVENT_ATTRIBUTES eventAttr
);

参数

[in] device

表示设备的框架设备对象的句柄。

[in] deviceInterfaceTag

与事件关联的设备接口。 默认情况下,只有具有相同标记的文件对象才会收到此事件。

[in] eventType

新事件类型。

[in] rawEventDataSize

原始事件(不含服务点标头)缓冲区大小(以字节为单位)。

rawEventDataPtr

指向原始(不含服务点标头)事件数据的指针。 调用方可以在 PosCxPutPendingEvent 返回后重用/释放 rawEventDataPtr

[in] eventAttr

事件属性。

返回值

可能的返回值为:

价值 描述
STATUS_SUCCESS 该事件已创建并委托给等待调用方,或者由于没有设备所有者而放弃该事件。
STATUS_PENDING 事件已排队,因为当前没有调用方正在等待。
其他错误 其他适当的失败错误代码。

要求

要求 价值
目标平台 窗户
标头 poscx.h (包括 Poscx.h)

另请参阅

POS_CX_EVENT_ATTRIBUTES