近场通信 (NFC)

近场通信 (NFC) 技术概述。

若要开发近场通信 (NFC) ,需要以下标头:

有关编程指南,请参阅 近场通信 (NFC)

IOCTL

 
IOCTL_NFCRM_QUERY_RADIO_STATE

无线电管理应用程序或服务使用此 IOCTL 来查询邻近感应设备的当前无线电电源状态。
IOCTL_NFCRM_SET_RADIO_STATE

无线电管理应用程序或服务使用此 IOCTL 来设置邻近感应设备的无线电电源状态。
IOCTL_NFCSE_ENUM_ENDPOINTS

返回有关附加到 NFC 控制器的所有安全元素列表的信息。
IOCTL_NFCSE_GET_NEXT_EVENT

IOCTL_NFCSE_GET_NEXT_EVENT控制代码返回缓冲区中可用的下一个事件,或者如果没有其他缓冲事件,则在安全元素事件可用之前保持挂起状态。 然后,必须将事件详细信息返回到调用方。
IOCTL_NFCSE_GET_NFCC_CAPABILITIES

IOCTL_NFCSE_GET_NFCC_CAPABILITIES控制代码返回有关当前 NFC 控制器功能的信息,包括 NFC 控制器接口 (的第 4.2 节中定义的最大侦听模式路由表大小 (NCI) 技术规范版本 1.1) 和支持的路由模式。
IOCTL_NFCSE_GET_ROUTING_TABLE

返回有关侦听模式路由表的当前配置的信息。
IOCTL_NFCSE_HCE_REMOTE_RECV

返回下一个可用数据缓冲区,或者如果没有更多的缓冲数据,请求应保持挂起状态,直到 APDU 缓冲区可供读取。
IOCTL_NFCSE_HCE_REMOTE_SEND

将响应 APDU 从 DeviceHost NFCEE 传输到远程设备。 调用方必须确保响应 APDU 符合 ISO-IEC 7816-4。
IOCTL_NFCSE_SET_CARD_EMULATION_MODE

IOCTL_NFCSE_SET_CARD_EMULATION_MODE控制代码设置指定的安全元素是否在卡仿真模式下公开。
IOCTL_NFCSE_SET_ROUTING_TABLE

配置 NFC 控制器侦听模式路由表。
IOCTL_NFCSE_SUBSCRIBE_FOR_EVENT

IOCTL_NFCSE_SUBSCRIBE_FOR_EVENT控制代码由客户端发出,用于订阅特定事件。
IOCTL_NFCSERM_QUERY_RADIO_STATE

SE 无线电管理应用程序或服务使用IOCTL_NFCSERM_QUERY_RADIO_STATE来查询邻近设备的当前无线电电源状态。
IOCTL_NFCSERM_SET_RADIO_STATE

SE 无线电管理应用程序或服务使用IOCTL_NFCSERM_SET_RADIO_STATE来设置邻近感应设备的当前无线电电源状态。
IOCTL_NFP_DISABLE

客户端发送IOCTL_NFP_DISABLE请求,以暂时禁用订阅、发布和状态事件。
IOCTL_NFP_ENABLE

客户端发送IOCTL_NFP_ENABLE请求,以重新启用以前禁用的订阅、发布和状态事件。
IOCTL_NFP_GET_KILO_BYTES_PER_SECOND

客户端将IOCTL_NFP_GET_KILO_BYTES_PER_SECOND请求发送到提供程序设备的任何泛型句柄,即未发布和未订阅的句柄。
IOCTL_NFP_GET_MAX_MESSAGE_BYTES

客户端将IOCTL_NFP_GET_MAX_MESSAGE_BYTES请求发送到任何泛型句柄(未发布和未订阅的句柄)到提供程序设备,以确定支持的最大消息大小。
IOCTL_NFP_GET_NEXT_SUBSCRIBED_MESSAGE

客户端将IOCTL_NFP_GET_NEXT_SUBSCRIBED_MESSAGE请求重复发送到订阅句柄,以便在订阅消息到达时接收这些消息。
IOCTL_NFP_GET_NEXT_TRANSMITTED_MESSAGE

有兴趣接收已传输消息的通知的客户端会将IOCTL_NFP_GET_NEXT_TRANSMITTED_MESSAGE请求发送到邻近感应驱动程序。
IOCTL_NFP_SET_PAYLOAD

客户端应用程序发送消息数据并使用IOCTL_NFP_SET_PAYLOAD请求确认发布。
IOCTL_SMARTCARD_GET_ATTRIBUTE

IOCTL_SMARTCARD_GET_ATTRIBUTE控制代码查询智能卡。
IOCTL_SMARTCARD_GET_STATE

IOCTL_SMARTCARD_GET_STATE控制代码获取智能卡的当前状态。
IOCTL_SMARTCARD_IS_ABSENT

如果当前未检测到智能卡,IOCTL_SMARTCARD_IS_ABSENT控制代码会立即返回STATUS_SUCCESS。
IOCTL_SMARTCARD_IS_PRESENT

IOCTL_SMARTCARD_IS_PRESENT控制代码检测当前是否检测到智能卡。
IOCTL_SMARTCARD_POWER

Windows 可能需要驱动程序将此 IOCTL 设置为 NOP 并返回成功。
IOCTL_SMARTCARD_SET_ATTRIBUTE

IOCTL_SMARTCARD_SET_ATTRIBUTE控件代码设置属性并返回SCARD_ATTR_DEVICE_IN_USE上的STATUS_SUCCESS;否则,它将返回STATUS_NOT_SUPPORTED。
IOCTL_SMARTCARD_SET_PROTOCOL

设置检测到卡后驱动程序与智能卡通信的 procotol。
IOCTL_SMARTCARD_TRANSMIT

将数据从客户端传输到符合 ISO7816-4 APDU 的检测到的智能卡。

枚举

 
NFC_CX_CE_MODE_CONFIG

此枚举指定 CE 侦听模式标志。
NFC_CX_DEVICE_MODE

指定设备模式标志。
NFC_CX_DRIVER_FLAGS

指定运行时驱动程序标志。
NFC_CX_HOST_ACTION

NFC_CX_HOST_ACTION枚举指定主机操作。
NFC_CX_NFCIP_MODE_CONFIG

NFC_CX_NFCIP_MODE_CONFIG枚举指定 NFC-IP 发起程序模式。
NFC_CX_NFCIP_TGT_MODE_CONFIG

NFC_CX_NFCIP_TGT_MODE_CONFIG枚举指定 NFC-IP 目标模式。
NFC_CX_POLL_BAILOUT_CONFIG

NFC_CX_POLL_BAILOUT_CONFIG枚举指定轮询模式救助。
NFC_CX_POLL_MODE_CONFIG

NFC_CX_POLL_MODE_CONFIG枚举指定轮询模式。
NFC_CX_SEQUENCE

NFC_CX_SEQUENCE枚举指定序列。
NFC_CX_TRANSPORT_TYPE

NFC_CX_TRANSPORT_TYPE枚举指定传输类型。
SECURE_ELEMENT_CARD_EMULATION_MODE

此枚举指示安全元素的卡仿真模式。
SECURE_ELEMENT_EVENT_TYPE

指示安全元素事件的类型。
SECURE_ELEMENT_ROUTING_TYPE

SECURE_ELEMENT_ROUTING_TYPE 是 SECURE_ELEMENT_ROUTING_TABLE_ENTRY 的成员。
SECURE_ELEMENT_TYPE

指示安全元素的类型。

函数

 
EVT_NFC_CX_DEVICE_IO_CONTROL

由 NFC CX 调用,以将未经处理的 IOCTL 发送到客户端驱动程序。
EVT_NFC_CX_SEQUENCE_HANDLER

由 NFC CX 调用,以通知客户端驱动程序处理特定的注册序列。
EVT_NFC_CX_WRITE_NCI_PACKET

由 NFC CX 调用,以将写入数据包发送到客户端驱动程序。
NFC_CX_CLIENT_CONFIG_INIT

NFC_CX_CLIENT_CONFIG_INIT 函数初始化 NFC_CX_CLIENT_CONFIG 结构。
NFC_CX_LLCP_CONFIG_INIT

NFC_CX_LLCP_CONFIG_INIT 函数初始化 NFC_CX_LLCP_CONFIG 结构。
NFC_CX_RF_DISCOVERY_CONFIG_INIT

NFC_CX_RF_DISCOVERY_CONFIG_INIT 函数初始化 NFC_CX_RF_DISCOVERY_CONFIG 结构。
NfcCxDeviceDeinitialize

nfccx.h (NfcCxDeviceDeinitialize 函数) 取消初始化在 AddDevice 例程期间创建的 WDF 设备。
NfcCxDeviceInitConfig

由客户端驱动程序在其 AddDevice 例程期间调用以执行 DeviceInit 函数。 在此过程中,还会交换以下 I/O 回调函数。
NfcCxDeviceInitialize

nfcCxDeviceInitialize 函数 (nfccx.h) 初始化在 AddDevice 例程期间创建的 WDF 设备。
NfcCxHardwareEvent

当发生硬件事件(如 D0Entry 和 D0Exit 回调)以启动或停止设备时,由客户端驱动程序调用。 对于在初始化或启动时需要下载固件的驱动程序,建议将此调用移动到单独的工作项。 但是,客户端驱动程序负责以下事项。
NfcCxNciReadNotification

读取数据包可用时由客户端驱动程序调用。
NfcCxRegisterSequenceHandler

由客户端驱动程序在初始化期间调用以注册以处理特定序列。
NfcCxSetLlcpConfig

由客户端驱动程序调用以配置 LLCP 参数。
NfcCxSetRfDiscoveryConfig

由客户端驱动程序调用以配置 RF 发现参数。
NfcCxUnregisterSequenceHandler

由客户端驱动程序在设备关闭期间调用以取消注册以前注册的序列处理程序回调。

结构

 
NFC_CX_CLIENT_CONFIG

NFC_CX_CLIENT_CONFIG 结构是 NfcCxDeviceInitConfig 的输入参数。
NFC_CX_HARDWARE_EVENT

NFC_CX_HARDWARE_EVENT 结构是 NfcCxHardwareEvent 的输入参数。
NFC_CX_LLCP_CONFIG

NFC_CX_LLCP_CONFIG 结构是 NfcCxSetLlcpConfig 的输入参数。
NFC_CX_RF_DISCOVERY_CONFIG

NFC_CX_RF_DISCOVERY_CONFIG结构包含 RF 发现配置设置。 在调用 NfcDxDeviceInitialize 后,应在初始化期间完成发现配置,否则将返回错误。
NFCCX_DRIVER_GLOBALS

_NFCCX_DRIVER_GLOBALS 结构包含近场通信 (NFC) CX 驱动程序的全局值。
NFCRM_RADIO_STATE

此结构用于指示无线电状态。
NFCRM_SET_RADIO_STATE

此结构用于设置单选状态。 对于飞行模式,驱动程序必须保留无线电状态,并在禁用飞行模式时还原它。
SCARD_IO_REQUEST

此结构用于标识智能卡 I/O 请求。
SECURE_ELEMENT_AID_ROUTING_INFO

SECURE_ELEMENT_AID_ROUTING_INFO 是 SECURE_ELEMENT_ROUTING_TABLE_ENTRY 的成员。
SECURE_ELEMENT_ENDPOINT_INFO

SECURE_ELEMENT_ENDPOINT_INFO 是 SECURE_ELEMENT_ENDPOINT_LIST 的成员。
SECURE_ELEMENT_ENDPOINT_LIST

IOCTL_NFCSE_ENUM_ENDPOINTS的输出参数。
SECURE_ELEMENT_EVENT_INFO

此结构提供有关安全元素事件的信息。
SECURE_ELEMENT_EVENT_SUBSCRIPTION_INFO

SECURE_ELEMENT_EVENT_SUBSCRIPTION_INFO 结构是IOCTL_NFCSE_SUBSCRIBE_FOR_EVENT的输入参数。
SECURE_ELEMENT_HCE_ACTIVATION_PAYLOAD

_SECURE_ELEMENT_HCE_ACTIVATION_PAYLOAD 结构包含唯一的连接标识符和 NFC 论坛 RF 技术和协议类型。
SECURE_ELEMENT_HCE_DATA_PACKET

SECURE_ELEMENT_HCE_DATA_PACKET是用于IOCTL_NFCSE_HCE_REMOTE_SEND的输入缓冲区,以及用于IOCTL_NFCSE_HCE_REMOTE_RECV的输出缓冲区。
SECURE_ELEMENT_NFCC_CAPABILITIES

SECURE_ELEMENT_NFCC_CAPABILITIES包含 NFC 控制器功能。
SECURE_ELEMENT_PROTO_ROUTING_INFO

SECURE_ELEMENT_PROTO_ROUTING_INFO 是 SECURE_ELEMENT_ROUTING_TABLE_ENTRY 的成员。
SECURE_ELEMENT_ROUTING_TABLE

SECURE_ELEMENT_ROUTING_TABLE是IOCTL_NFCSE_SET_ROUTING_TABLE的输入参数。
SECURE_ELEMENT_ROUTING_TABLE_ENTRY

SECURE_ELEMENT_ROUTING_TABLE_ENTRY 是 SECURE_ELEMENT_ROUTING_TABLE 的成员。
SECURE_ELEMENT_SET_CARD_EMULATION_MODE_INFO

SECURE_ELEMENT_SET_CARD_EMULATION_MODE_INFO是IOCTL_NFCSE_SET_CARD_EMULATION_MODE的输入参数。
SECURE_ELEMENT_TECH_ROUTING_INFO

SECURE_ELEMENT_TECH_ROUTING_INFO 是 SECURE_ELEMENT_ROUTING_TABLE_ENTRY 的成员。