WDF_IO_TARGET_OPEN_TYPE-Enumeration (wdfiotarget.h)

[Gilt für KMDF und UMDF]

Die WDF_IO_TARGET_OPEN_TYPE-Enumeration gibt an, wie ein Treiber ein Remote-E/A-Ziel identifiziert, wenn der Treiber WdfIoTargetOpen aufruft.

Syntax

typedef enum _WDF_IO_TARGET_OPEN_TYPE {
  WdfIoTargetOpenUndefined = 0,
  WdfIoTargetOpenUseExistingDevice = 1,
  WdfIoTargetOpenByName = 2,
  WdfIoTargetOpenReopen = 3,
  WdfIoTargetOpenLocalTargetByFile = 4
} WDF_IO_TARGET_OPEN_TYPE;

Konstanten

 
WdfIoTargetOpenUndefined
Wert: 0
Ist für das System reserviert.
WdfIoTargetOpenUseExistingDevice
Wert: 1
Dieser Wert wird nur von KMDF unterstützt.

Der Treiber identifiziert ein Remote-E/A-Ziel, indem er einen Zeiger auf ein Windows-Treibermodell (WDM) DEVICE_OBJECT-Struktur angibt .
WdfIoTargetOpenByName
Wert: 2
Der Treiber öffnet ein Remote-E/A-Ziel, indem er eine Unicode-Namenszeichenfolge angibt, die einen Objektnamen darstellt. Dieser Name kann ein Gerät, eine Datei oder eine Geräteschnittstelle identifizieren.
WdfIoTargetOpenReopen
Wert: 3
Der Treiber öffnet ein Remote-E/A-Ziel erneut, nachdem er zuvor WdfIoTargetCloseForQueryRemove aufgerufen hat. Weitere Informationen finden Sie im folgenden Abschnitt "Hinweise".
WdfIoTargetOpenLocalTargetByFile
Wert: 4
Dieser Wert wird nur von UMDF unterstützt.

UMDF Der Treiber öffnet ein Dateihandle, das den unteren Stapel darstellt (genau wie ein lokales Ziel), sodass er eine vom Treiber erstellte Anforderung an den unteren Stapel senden kann. Ein UMDF-Treiber gibt diesen Wert an, wenn er WDF_IO_TARGET_OPEN_PARAMS_INIT_OPEN_BY_FILE aufruft.

Hinweise

Die WDF_IO_TARGET_OPEN_TYPE-Enumeration wird im Type-Element der WDF_IO_TARGET_OPEN_PARAMS-Struktur verwendet.

Der Treiber kann WdfIoTargetOpenReopen nur angeben, wenn er WdfIoTargetOpenByName angegeben hat, als er ursprünglich das Remote-E/A-Ziel geöffnet hat.

Wenn WdfIoTargetOpenReopen festgelegt ist, ignoriert das Framework alle anderen Member der WDF_IO_TARGET_OPEN_PARAMS-Struktur und verwendet die Werte, die der Treiber angegeben hat, als er ursprünglich WdfIoTargetOpen aufgerufen hat, um ein Remote-E/A-Ziel zu öffnen.

Standardmäßig (es sei denn, der Treiber gibt UmdfFileObjectPolicy=AllowNullAndUnknownFileObjects in seiner INF-Datei an) lässt UMDF die Verarbeitung von E/A-Anforderungen nicht zu, die nicht einem Dateiobjekt zugeordnet sind. Außerdem schlagen einige Treiberstapel, z. B. HIDClass-enumerated Collection PDOs, Anforderungen fehl, die kein zugeordnetes Dateiobjekt aufweisen.

Im Gegensatz zu von Der App erstellten Anforderungen haben treiber erstellte Anforderungen, die an ein lokales E/A-Ziel gesendet werden, kein zugeordnetes Dateiobjekt. Daher schlägt das Framework oder der niedrigere Treiber diese Anforderungen möglicherweise fehl.

In dieser Situation können Sie WdfIoTargetOpenLocalTargetByFile verwenden, um zu bewirken, dass vom Treiber erstellte Anforderungen, die an ein lokales Ziel gesendet werden, dem Dateiobjekt zugeordnet werden, das diesem Ziel entspricht.

Anforderungen

Anforderung Wert
KMDF-Mindestversion 1.0
UMDF-Mindestversion 2.0
Kopfzeile wdfiotarget.h (einschließen von Wdf.h)

Weitere Informationen

DEVICE_OBJECT

WDF_IO_TARGET_OPEN_PARAMS

WDF_IO_TARGET_OPEN_PARAMS_INIT_OPEN_BY_FILE

WdfIoTargetCloseForQueryRemove

WdfIoTargetOpen