WDF_REQUEST_SEND_OPTIONS_FLAGS列舉 (wdfrequest.h)

[適用於 KMDF 和 UMDF]

WDF_REQUEST_SEND_OPTIONS_FLAGS列舉類型會定義驅動程式WDF_REQUEST_SEND_OPTIONS結構中使用的旗標。

Syntax

typedef enum _WDF_REQUEST_SEND_OPTIONS_FLAGS {
  WDF_REQUEST_SEND_OPTION_TIMEOUT = 0x00000001,
  WDF_REQUEST_SEND_OPTION_SYNCHRONOUS = 0x00000002,
  WDF_REQUEST_SEND_OPTION_IGNORE_TARGET_STATE = 0x00000004,
  WDF_REQUEST_SEND_OPTION_SEND_AND_FORGET = 0x00000008,
  WDF_REQUEST_SEND_OPTION_IMPERSONATE_CLIENT = 0x00010000,
  WDF_REQUEST_SEND_OPTION_IMPERSONATION_IGNORE_FAILURE = 0x00020000
} WDF_REQUEST_SEND_OPTIONS_FLAGS;

常數

 
WDF_REQUEST_SEND_OPTION_TIMEOUT
值: 0x00000001
如果驅動程式設定此旗標,則WDF_REQUEST_SEND_OPTIONS結構的 Timeout 成員有效。
WDF_REQUEST_SEND_OPTION_SYNCHRONOUS
值: 0x00000002
如果驅動程式設定此旗標,架構會同步處理相關聯的 I/O 要求。 (如果驅動程式呼叫名稱以 「Synchronously」 結尾的物件方法,例如 WdfIoTargetSendReadSynchronously.) ,則驅動程式不需要設定此旗標
WDF_REQUEST_SEND_OPTION_IGNORE_TARGET_STATE
值: 0x00000004
如果驅動程式設定此旗標,架構會將 I/O 要求傳送至 I/O 目標,而不論 I/O 目標的狀態為何。 如果未設定,架構會在目標停止時將要求排入佇列。 設定此旗標可讓驅動程式在驅動程式呼叫 WdfIoTargetStop 之後,將要求傳送至裝置,例如重設 USB 管道的要求。
WDF_REQUEST_SEND_OPTION_SEND_AND_FORGET
值: 0x00000008
如果驅動程式設定此旗標,驅動程式會以異步方式傳送要求,而且不需要在要求完成或取消時收到通知。 不論 I/O 目標的狀態為何,架構都會將 I/O 要求傳送至 I/O 目標。 驅動程式不會設定 CompletionRoutine 回呼函式,或呼叫 要求的 WdfRequestComplete 。 如果驅動程式設定此旗標,它就無法設定任何其他旗標。 如需此旗標的詳細資訊,請參閱下列一節。
WDF_REQUEST_SEND_OPTION_IMPERSONATE_CLIENT
值: 0x00010000
此旗標僅適用於UMDF。 如果設定,且 I/O 要求類型為 WdfRequestTypeCreate,WdfRequestSend 方法會嘗試將用戶端的模擬層級傳遞至驅動程式的 I/O 目標。 WdfRequestSend 方法會在模擬嘗試失敗時傳回錯誤碼,除非驅動程式也會設定WDF_REQUEST_SEND_OPTION_IMPERSONATION_IGNORE_FAILURE旗標。
WDF_REQUEST_SEND_OPTION_IMPERSONATION_IGNORE_FAILURE
值: 0x00020000
此旗標僅適用於UMDF。 如果設定,架構仍會傳送要求,即使模擬失敗也一樣。 您只能搭配 WDF_REQUEST_SEND_OPTION_IMPERSONATE_CLIENT使用此值。

備註

設定WDF_REQUEST_SEND_OPTION_SEND_AND_FORGET旗標的驅動程式在呼叫 WdfRequestSend 以將要求傳送至 I/O 目標之前,通常不會格式化 I/O 要求。 事實上,設定此旗標的驅動程式在呼叫 WdfRequestSend 之前,不得先呼叫任何 WdfIoTargetFormatRequestForXxx 方法。 驅動程式只能使用 WdfRequestFormatRequestUsingCurrentTypeWdfRequestWdmFormatUsingStackLocation 方法來格式化要求。

在下列情況下,驅動程式 無法 設定WDF_REQUEST_SEND_OPTION_SEND_AND_FORGET旗標:

如需此列舉的 UMDF 版本,請參閱 WDF_REQUEST_SEND_OPTIONS_FLAGS (UMDF)

規格需求

需求
最低 KMDF 版本 1.0
最低UMDF版本 2.0
標頭 wdfrequest.h (包含 Wdf.h)

另請參閱

WDF_REQUEST_SEND_OPTIONS

WdfIoTargetStop