IOCTL_NFP_SET_PAYLOAD IOCTL (nfpdev.h)
用戶端應用程式會傳送訊息數據,並使用 IOCTL_NFP_SET_PAYLOAD 要求確認發行集。
主要程序代碼
輸入緩衝區
輸入緩衝區包含要傳輸的訊息數據。
輸出緩衝區
無。
狀態區塊
如果要求成功,Irp-IoStatus.Status> 會設定為 STATUS_SUCCESS。
否則,狀態為適當的錯誤狀況為NTSTATUS程式碼。
如需詳細資訊,請參閱 NTSTATUS值。
備註
使用此 IOCTL 時,需要下列動作:
- 如果這個 IOCTL 是在先前尚未在 “Pubs\...” 上開啟的句柄上傳送檔名,驅動程式必須以STATUS_INVALID_DEVICE_STATE完成。
- 訊息數據是寫入一次。 如果此 IOCTL 成功一次,則必須使用 STATUS_INVALID_DEVICE_STATE 完成相同句柄上收到的任何後續IOCTL_NFP_SET_PAYLOAD。
- 如果 IOCTL 包含輸出緩衝區,驅動程式必須以STATUS_INVALID_PARAMETER完成 IOCTL。
- 如果輸入緩衝區大於驅動程式的訊息大小上限,驅動程序必須以STATUS_INVALID_BUFFER_SIZE完成 IOCTL。
- 如果此 IOCTL 成功之後有任何裝置變成代理程式,並在關閉句柄之前,訊息數據 (及其類型) 只能傳送一次到代理裝置。
- 如果在關閉句柄之前,相同的 (或不同的) 裝置再次變成同位,則必須再次傳輸訊息。
- 如果此 IOCTL 順利完成時,裝置目前為同位,則訊息資料 (及其類型) 必須只傳輸一次 () 至代理裝置一次。 即使句柄立即關閉,也會套用此動作。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 8 |
標頭 | nfpdev.h |