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 函式來初始化。
如果驅動程式以同步方式傳送要求,建議驅動程式在 旗標中設定逾時值和逾時旗標, 這個結構的成員。
要求
要求 | 價值 |
---|---|
最低 KMDF 版本 | 1.0 |
最低 UMDF 版本 | 2.0 |
標頭 | wdfrequest.h (包括 Wdf.h) |
另請參閱
WDF_REQUEST_SEND_OPTIONS_FLAGS