共用方式為


IOCTL_NFP_SET_PAYLOAD IOCTL (nfpdev.h)

用戶端應用程式會傳送訊息數據,並使用 IOCTL_NFP_SET_PAYLOAD 要求確認發行集。

主要程序代碼

IRP_MJ_DEVICE_CONTROL

輸入緩衝區

輸入緩衝區包含要傳輸的訊息數據。

輸出緩衝區

沒有。

狀態區塊

Irp->如果要求成功,IoStatus.Status 會設定為STATUS_SUCCESS。

否則,狀態為適當的錯誤條件作為NTSTATUS程式碼。

如需詳細資訊,請參閱 NTSTATUS 值

言論

使用此 IOCTL 時需要下列動作:

  • 如果這個 IOCTL 是在先前尚未在 “Pubs\...” 上開啟的句柄上傳送filename,驅動程序必須以STATUS_INVALID_DEVICE_STATE完成。
  • 訊息數據會寫入一次。 如果此 IOCTL 成功一次,則相同句柄上收到的任何後續IOCTL_NFP_SET_PAYLOAD都必須完成STATUS_INVALID_DEVICE_STATE。
  • 如果 IOCTL 包含輸出緩衝區,驅動程式必須使用 STATUS_INVALID_PARAMETER 完成 IOCTL。
  • 如果輸入緩衝區大於驅動程式的訊息大小上限,驅動程序必須以STATUS_INVALID_BUFFER_SIZE完成 IOCTL。
  • 如果此 IOCTL 成功之後任何裝置變成代理裝置,而且在關閉句柄之前,則訊息數據(連同其類型)必須只傳送一次至代理裝置。
  • 如果相同 (或不同) 裝置在關閉句柄之前再次變成代理,則必須再次傳輸訊息。
  • 如果此 IOCTL 順利完成時,裝置目前處於近端狀態,則必須將訊息數據(連同其類型一起)傳輸(只有一次)傳送至代理裝置。 即使句柄立即關閉,也是如此。

要求

要求 價值
最低支援的用戶端 Windows 8
標頭 nfpdev.h

另請參閱

近距離通信(NFC)整體設計指南

近距離鄰近設計指南(點選和 Do、NFP 提供者模型、驅動程式需求)