共用方式為


WDF_REQUEST_SEND_OPTIONS_FLAGS列舉型別 (wdfrequest.h)

[適用於 KMDF 和 UMDF]

WDF_REQUEST_SEND_OPTIONS_FLAGS 列舉型別會定義用於驅動程式 WDF_REQUEST_SEND_OPTIONS 結構的旗標。

語法

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
如果驅動程式設定此旗標,Timeout 成員WDF_REQUEST_SEND_OPTIONS結構有效。
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