近距離現場通信(NFC)
近場通信(NFC)技術的概觀。
若要開發近場通信 (NFC),您需要下列標頭:
如需程式設計指南,請參閱 近距離通信(NFC)。
IOCTLs
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 控制器介面 (NCI) 技術規格第 1.1 版的第 4.2 節及支援的路由模式。 |
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 NfcCxDeviceDeinitialize 函式 (nfccx.h) deinitializes 在 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_RECV IOCTL_NFCSE_HCE_REMOTE_SEND輸出緩衝區的輸入緩衝區。 |
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 的成員。 |