IOCTL_NFP_DISABLE IOCTL (nfpdev.h)

客户端发送 IOCTL_NFP_DISABLE 请求以暂时禁用订阅、发布和状态事件。 当客户端想要禁用邻近功能时,这会很有用,但在需要时保留分配的资源以快速重新启用它们。

主要代码

IRP_MJ_DEVICE_CONTROL

输入缓冲区

没有

输出缓冲区

没有

状态块

Irp->IoStatus.Status 设置为STATUS_SUCCESS(如果请求成功)。

否则,状态为相应的错误条件作为 NTSTATUS 代码。

有关详细信息,请参阅 NTSTATUS 值

言论

使用此 IOCTL 时,需要执行以下作:

  • 收到此 IOCTL 时,驱动程序必须将文件句柄标记为“Disabled”。
  • 如果订阅句柄更改为“已禁用”,提供程序必须从该文件句柄的“已接收”队列中删除所有消息。
  • 如果订阅句柄为“Disabled”:
    • 驱动程序必须保持该句柄的“接收”队列长度为零,方法是清除队列中的现有消息,并在收到新消息后立即从队列中删除新消息。
    • 驱动程序必须使用 STATUS_CANCELLED 完成该句柄上的所有笔 IOCTL_NFP_GET_NEXT_SUBSCRIBED_MESSAGE 请求。
  • 如果发布句柄为“Disabled”,则提供程序不得传输发布的消息,并且它必须通过STATUS_CANCELLED完成该句柄上的所有笔 IOCTL_NFP_GET_NEXT_TRANSMITTED_MESSAGE 请求

要求

要求 价值
最低支持的客户端 Windows 8
标头 nfpdev.h

另请参阅

IOCTL_NFP_ENABLE

近场通信(NFC)整体设计指南

近场邻近感应设计指南(点击和执行、NFP 提供程序模型、驱动程序要求)