WDF_REQUEST_SEND_OPTIONS-Struktur (wdfrequest.h)

[Gilt für KMDF und UMDF]

Die WDF_REQUEST_SEND_OPTIONS-Struktur gibt Optionen an, die dem Senden einer E/A-Anforderung an ein E/A-Ziel zugeordnet sind.

Syntax

typedef struct _WDF_REQUEST_SEND_OPTIONS {
  ULONG    Size;
  ULONG    Flags;
  LONGLONG Timeout;
} WDF_REQUEST_SEND_OPTIONS, *PWDF_REQUEST_SEND_OPTIONS;

Member

Size

Die Größe (in Bytes) dieser Struktur.

Flags

Ein bitweises OR mit WDF_REQUEST_SEND_OPTIONS_FLAGS typisierten Flags.

Timeout

Ein Timeoutwert in Systemzeiteinheiten (Intervalle von 100 Nanosekunden). Wenn der Treiber das WDF_REQUEST_SEND_OPTION_TIMEOUT-Flag festgelegt hat, bricht das Framework die zugeordnete E/A-Anforderung ab, wenn sie nicht innerhalb des angegebenen Timeoutzeitraums abgeschlossen wird. Der Timeoutwert kann wie folgt negativ, positiv oder null sein:

  • Wenn der Wert negativ ist, ist die Ablaufzeit relativ zur aktuellen Systemzeit.
  • Wenn der Wert positiv ist, wird die Ablaufzeit als absolute Zeit angegeben (die tatsächlich relativ zum 1. Januar 1601 ist).
  • Wenn der Wert 0 (null) ist, führt das Framework kein Timeout für die Anforderung aus.
Relative Ablaufzeiten werden nicht durch Änderungen an der Systemzeit beeinflusst, die innerhalb des angegebenen Timeoutzeitraums auftreten können. Absolute Ablaufzeiten spiegeln Änderungen der Systemzeit wider.

Das Framework stellt Zeitkonvertierungsfunktionen bereit, die Zeitwerte in Systemzeiteinheiten konvertieren.

Wenn das Framework eine E/A-Anforderung abbricht, weil der angegebene Timeoutzeitraum abgelaufen ist, stellt das Framework einen Abschluss status von STATUS_IO_TIMEOUT für die E/A-Anforderung bereit. Nach Ablauf des Timeoutzeitraums kann das E/A-Ziel die E/A-Anforderung jedoch abschließen, bevor das Framework sie abbrechen kann. In diesem Fall wird der Abschluss der E/A-Anforderung status nicht STATUS_IO_TIMEOUT.

Hinweise

Die WDF_REQUEST_SEND_OPTIONS-Struktur wird an Objektmethoden übergeben, die eine E/A-Anforderung an ein E/A-Ziel senden, z. B. die WdfRequestSend-Methode . Die -Struktur muss durch Aufrufen der funktionen WDF_REQUEST_SEND_OPTIONS_INIT und WDF_REQUEST_SEND_OPTIONS_SET_TIMEOUT initialisiert werden.

Wenn der Treiber die Anforderung synchron sendet, wird empfohlen, dass der Treiber im Flags-Member dieser Struktur einen Timeoutwert und das Timeoutflag festlegen.

Anforderungen

Anforderung Wert
KMDF-Mindestversion 1.0
UMDF-Mindestversion 2.0
Kopfzeile wdfrequest.h (include Wdf.h)

Weitere Informationen

WDF_REQUEST_SEND_OPTIONS_FLAGS

WDF_REQUEST_SEND_OPTIONS_INIT

WDF_REQUEST_SEND_OPTIONS_SET_TIMEOUT

WdfRequestSend