WDF_REQUEST_SEND_OPTIONS 結構 (wdfrequest.h)
[適用於 KMDF 和 UMDF]
WDF_REQUEST_SEND_OPTIONS 結構會指定與將 I/O 要求傳送至 I/O 目標相關聯的選項。
語法
typedef struct _WDF_REQUEST_SEND_OPTIONS {
ULONG Size;
ULONG Flags;
LONGLONG Timeout;
} WDF_REQUEST_SEND_OPTIONS, *PWDF_REQUEST_SEND_OPTIONS;
成員
Size
這個 結構的大小,以位元組為單位。
Flags
WDF_REQUEST_SEND_OPTIONS_FLAGS型別旗標的位 OR。
Timeout
逾時值,以系統時間單位為單位, (100 奈秒間隔) 。 如果驅動程式已設定WDF_REQUEST_SEND_OPTION_TIMEOUT旗標,則架構會在指定的逾時期間內未完成時取消相關聯的 I/O 要求。 逾時值可以是負數、正數或零,如下所示:
- 如果值為負數,則到期時間會相對於目前的系統時間。
- 如果值為正數,則會將到期時間指定為絕對時間 (,這實際上相對於 1601 年 1 月 1 日) 。
- 如果值為零,架構就不會逾時要求。
架構提供 時間轉換函式 ,可將時間值轉換成系統時間單位。
如果架構因為指定的逾時期間已過而取消 I/O 要求,則架構會為 I/O 要求提供STATUS_IO_TIMEOUT完成狀態。 不過,在逾時期間過後,I/O 目標可能會在架構能夠取消之前完成 I/O 要求。 在此情況下,I/O 要求的完成狀態將不會STATUS_IO_TIMEOUT。
備註
WDF_REQUEST_SEND_OPTIONS 結構會傳遞至將 I/O 要求傳送至 I/O 目標的物件方法,例如 WdfRequestSend 方法。 結構必須藉由呼叫 WDF_REQUEST_SEND_OPTIONS_INIT 和 WDF_REQUEST_SEND_OPTIONS_SET_TIMEOUT 函式來初始化。
如果驅動程式以同步方式傳送要求,建議驅動程式在此結構的 Flags 成員中設定逾時值和逾時旗標。
規格需求
需求 | 值 |
---|---|
最低 KMDF 版本 | 1.0 |
最低UMDF版本 | 2.0 |
標頭 | wdfrequest.h (包含 Wdf.h) |
另請參閱
WDF_REQUEST_SEND_OPTIONS_FLAGS