通过


NFP 设备接口

客户端应用程序通过发送到打开句柄的已定义的 I/O 控制代码集与邻近设备通信。

发布和订阅句柄

每个发布和每个订阅都表示为驱动程序的打开句柄。 因此,M 发布和 N 订阅等同于驱动程序的 M+N 打开句柄。 Windows I/O 管理器将对进程强制实施合理的句柄计数限制。

通用 NULL 文件名句柄

打开一个通用文件句柄,用于向驱动程序发送非发布和非订阅请求。 必须接受这种类型的句柄。 客户端将使用此句柄来确定驱动程序的最大消息大小和传输速率。

IOCTL Support

支持邻近设备驱动程序接口的 IOCTL 在 Nfpdev.h 中定义。 控件代码使用以下属性定义。

  • METHOD_BUFFERED
  • FILE_ANY_ACCESS
  • FILE_DEVICE_NFP

每个发布和每个订阅都显示为驱动程序自己的打开句柄。 因此,M 发布和 N 订阅等同于驱动程序的 M+N 打开句柄。 Windows I/O 管理器将对进程强制实施合理的句柄计数限制。

IOCTL 代码在标头 Nfpdev.h 中定义

设备的安全描述符保留为 OS 或设备类默认值。

保留代码和供应商 IOCTL 代码

下表描述了保留和供应商特定的控制代码范围。

类型 Range Start Range End
Reserved CTL_CODE(FILE_DEVICE_NFP, 0x0000, *, *) CTL_CODE(FILE_DEVICE_NFP, 0x00FF, *, *)
Vendor Specific CTL_CODE(FILE_DEVICE_NFP, 0x0100, *, *) CTL_CODE(FILE_DEVICE_NFP, 0x01FF, *, *)