Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Overview of the Near field communications (NFC) technology.
To develop Near field communications (NFC), you need these headers:
For the programming guide, see Near field communications (NFC).
IOCTLs
| IOCTL_NFCRM_QUERY_RADIO_STATE This IOCTL is used by the radio management application or service to query the current radio power state of the proximity device. |
| IOCTL_NFCRM_SET_RADIO_STATE This IOCTL is used by the radio management application or service to set the radio power state of the proximity device. |
| IOCTL_NFCSE_ENUM_ENDPOINTS Returns information regarding the list of all the secure elements attached to the NFC controller. |
| IOCTL_NFCSE_GET_NEXT_EVENT The IOCTL_NFCSE_GET_NEXT_EVENT control code returns the next event available in the buffer, or if there are no more buffered events remains pending until a secure element event is available. The event details must then be returned to the caller. |
| IOCTL_NFCSE_GET_NFCC_CAPABILITIES The IOCTL_NFCSE_GET_NFCC_CAPABILITIES control code returns information about the current NFC controller capabilities, including the maximum Listen Mode Routing table size (defined in section 4.2 of the NFC Controller Interface (NCI) Technical Specification Version 1.1) and supported routing modes. |
| IOCTL_NFCSE_GET_ROUTING_TABLE Returns information regarding the current configuration of listen mode routing table. |
| IOCTL_NFCSE_HCE_REMOTE_RECV Either returns the next data buffer available, or if there are no more buffered data, the request shall stay pending until an APDU buffer is available for reading. |
| IOCTL_NFCSE_HCE_REMOTE_SEND Transmits response APDU from DeviceHost NFCEE to remote device. The caller must be sure that response APDU is conformant to ISO-IEC 7816-4. |
| IOCTL_NFCSE_SET_CARD_EMULATION_MODE The IOCTL_NFCSE_SET_CARD_EMULATION_MODE control code sets whether the specified secure element is exposed in card emulation mode. |
| IOCTL_NFCSE_SET_ROUTING_TABLE Configures NFC controller listen mode routing table. |
| IOCTL_NFCSE_SUBSCRIBE_FOR_EVENT The IOCTL_NFCSE_SUBSCRIBE_FOR_EVENT control code is issued by a client to subscribe to a specific event. |
| IOCTL_NFCSERM_QUERY_RADIO_STATE The IOCTL_NFCSERM_QUERY_RADIO_STATE is used by the SE radio management application or service to query the current radio power state of the proximity device. |
| IOCTL_NFCSERM_SET_RADIO_STATE The IOCTL_NFCSERM_SET_RADIO_STATE is used by the SE radio management application or service to set the current radio power state of the proximity device. |
| IOCTL_NFP_DISABLE A client sends the IOCTL_NFP_DISABLE request to temporarily disable subscriptions, publications, and presence events. |
| IOCTL_NFP_ENABLE The client sends the IOCTL_NFP_ENABLE request to re-enable previously disabled subscriptions, publications, and presence events. |
| IOCTL_NFP_GET_KILO_BYTES_PER_SECOND A client sends the IOCTL_NFP_GET_KILO_BYTES_PER_SECOND request to any generic handle, one that is non-published and non-subscribed, to the provider device. |
| IOCTL_NFP_GET_MAX_MESSAGE_BYTES A client sends the IOCTL_NFP_GET_MAX_MESSAGE_BYTES request to any generic handle, one that is non-published and non-subscribed, to the provider device to determine the maximum message size supported. |
| IOCTL_NFP_GET_NEXT_SUBSCRIBED_MESSAGE The client sends the IOCTL_NFP_GET_NEXT_SUBSCRIBED_MESSAGE request to the subscription handle repeatedly in order to receive subscribed messages as they arrive. |
| IOCTL_NFP_GET_NEXT_TRANSMITTED_MESSAGE A client interested in receiving notifications that a message has been transmitted will send the IOCTL_NFP_GET_NEXT_TRANSMITTED_MESSAGE request to the proximity driver. |
| IOCTL_NFP_SET_PAYLOAD A client application sends message data and confirms publication with the IOCTL_NFP_SET_PAYLOAD request. |
| IOCTL_SMARTCARD_GET_ATTRIBUTE The IOCTL_SMARTCARD_GET_ATTRIBUTE control code queries for smart card attributes. |
| IOCTL_SMARTCARD_GET_STATE The IOCTL_SMARTCARD_GET_STATE control code gets the current status of the smart card. |
| IOCTL_SMARTCARD_IS_ABSENT The IOCTL_SMARTCARD_IS_ABSENT control code returns immediately with STATUS_SUCCESS if no smart card is currently detected. |
| IOCTL_SMARTCARD_IS_PRESENT The IOCTL_SMARTCARD_IS_PRESENT control code detects whether a smart card is currently detected. |
| IOCTL_SMARTCARD_POWER Windows may require a driver to have this IOCTL to be NOP and return success. |
| IOCTL_SMARTCARD_SET_ATTRIBUTE The IOCTL_SMARTCARD_SET_ATTRIBUTE control code sets an attribute and returns STATUS_SUCCESS on SCARD_ATTR_DEVICE_IN_USE; otherwise, it returns STATUS_NOT_SUPPORTED. |
| IOCTL_SMARTCARD_SET_PROTOCOL Sets the procotol the driver communicates to the smart card with after the card is detected. |
| IOCTL_SMARTCARD_TRANSMIT Transmits data from the client to the detected smart card in ISO7816-4 compliant APDU. |
Enumerations
| SECURE_ELEMENT_CARD_EMULATION_MODE This enumeration indicates the card emulation mode of a secure element. |
| SECURE_ELEMENT_EVENT_TYPE Indicates the type of secure element events. |
| SECURE_ELEMENT_ROUTING_TYPE SECURE_ELEMENT_ROUTING_TYPE is a member of SECURE_ELEMENT_ROUTING_TABLE_ENTRY. |
| SECURE_ELEMENT_TYPE Indicates the type of a secure element. |
Structures
| NFCRM_RADIO_STATE This structure is used to indicate the radio state. |
| NFCRM_SET_RADIO_STATE This structure is used to set the radio state. The driver, in the case of airplane mode, has to persist the radio state and restore it when airplane mode is disabled. |
| SCARD_IO_REQUEST This structure is used to identify a smart card I/O request. |
| SECURE_ELEMENT_AID_ROUTING_INFO SECURE_ELEMENT_AID_ROUTING_INFO is a member of SECURE_ELEMENT_ROUTING_TABLE_ENTRY. |
| SECURE_ELEMENT_ENDPOINT_INFO SECURE_ELEMENT_ENDPOINT_INFO is a member of SECURE_ELEMENT_ENDPOINT_LIST. |
| SECURE_ELEMENT_ENDPOINT_LIST The output parameter for IOCTL_NFCSE_ENUM_ENDPOINTS. |
| SECURE_ELEMENT_EVENT_INFO This structure provides information about a secure element event. |
| SECURE_ELEMENT_EVENT_SUBSCRIPTION_INFO The SECURE_ELEMENT_EVENT_SUBSCRIPTION_INFO structure is an input parameter to IOCTL_NFCSE_SUBSCRIBE_FOR_EVENT. |
| SECURE_ELEMENT_HCE_ACTIVATION_PAYLOAD The _SECURE_ELEMENT_HCE_ACTIVATION_PAYLOAD structure contains a unique connection identifier and NFC Forum RF technology and protocol types. |
| SECURE_ELEMENT_HCE_DATA_PACKET SECURE_ELEMENT_HCE_DATA_PACKET is an input buffer to IOCTL_NFCSE_HCE_REMOTE_SEND and output buffer for IOCTL_NFCSE_HCE_REMOTE_RECV. |
| SECURE_ELEMENT_NFCC_CAPABILITIES SECURE_ELEMENT_NFCC_CAPABILITIES contains NFC controller capabilities. |
| SECURE_ELEMENT_PROTO_ROUTING_INFO SECURE_ELEMENT_PROTO_ROUTING_INFO is a member of SECURE_ELEMENT_ROUTING_TABLE_ENTRY. |
| SECURE_ELEMENT_ROUTING_TABLE SECURE_ELEMENT_ROUTING_TABLE is an input parameter for IOCTL_NFCSE_SET_ROUTING_TABLE. |
| SECURE_ELEMENT_ROUTING_TABLE_ENTRY SECURE_ELEMENT_ROUTING_TABLE_ENTRY is a member of SECURE_ELEMENT_ROUTING_TABLE. |
| SECURE_ELEMENT_SET_CARD_EMULATION_MODE_INFO SECURE_ELEMENT_SET_CARD_EMULATION_MODE_INFO is the input parameter for IOCTL_NFCSE_SET_CARD_EMULATION_MODE. |
| SECURE_ELEMENT_TECH_ROUTING_INFO SECURE_ELEMENT_TECH_ROUTING_INFO is a member of SECURE_ELEMENT_ROUTING_TABLE_ENTRY. |