WDF_FILEOBJECT_CLASS-Enumeration (wdfdevice.h)
[Gilt für KMDF und UMDF]
Die WDF_FILEOBJECT_CLASS-Enumeration definiert Werte, die angeben, ob ein Treiber ein Frameworkdateiobjekt benötigt, um eine Datei darzustellen, die eine Anwendung oder ein anderer Treiber zu erstellen oder zu öffnen versucht. Diese Werte geben auch an, wo das Framework das Handle des Objekts speichern kann.
Syntax
typedef enum _WDF_FILEOBJECT_CLASS {
WdfFileObjectInvalid = 0,
WdfFileObjectNotRequired = 1,
WdfFileObjectWdfCanUseFsContext = 2,
WdfFileObjectWdfCanUseFsContext2 = 3,
WdfFileObjectWdfCannotUseFsContexts = 4,
WdfFileObjectCanBeOptional = 0x80000000
} WDF_FILEOBJECT_CLASS, *PWDF_FILEOBJECT_CLASS;
Konstanten
WdfFileObjectInvalid Wert: 0 Für die interne Verwendung reserviert. |
WdfFileObjectNotRequired Wert: 1 Der Treiber erfordert kein Frameworkdateiobjekt. |
WdfFileObjectWdfCanUseFsContext Wert: 2 Der Treiber erfordert ein Frameworkdateiobjekt. Das Framework kann das Handle des Objekts im FsContext-Member des Windows-Treibermodells (WDM) der Datei FILE_OBJECT-Struktur speichern. |
WdfFileObjectWdfCanUseFsContext2 Wert: 3 Der Treiber erfordert ein Frameworkdateiobjekt. Das Framework kann das Handle des Objekts im FsContext2-Member der WDM-FILE_OBJECT-Struktur der Datei speichern. |
WdfFileObjectWdfCannotUseFsContexts Wert: 4 Der Treiber erfordert ein Frameworkdateiobjekt. Das Framework kann das Handle des Objekts nicht im FsContext - oder FsContext2-Member der WDM-FILE_OBJECT-Struktur der Datei speichern, da mindestens ein Treiber diese Member verwendet. Daher muss das Framework das Handle intern speichern. |
WdfFileObjectCanBeOptional Wert: 0x80000000 Der Treiber erfordert in der Regel ein Frameworkdateiobjekt, aber der Treiber kann auch spezielle Situationen behandeln, in denen ein Frameworkdateiobjekt fehlt oder sich unterscheidet. Weitere Informationen zu diesen Situationen finden Sie im abschnitt "Hinweise". WdfFileObjectCanBeOptional ist ein Bitflag, das Ihr Treiber ODER mit dem WdfFileObjectWdfCanUseFsContext, WdfFileObjectWdfCanUseFsContext2 oder WdfFileObjectWdfCannotUseFsContexts Enumeratorwert verwenden kann. Die meisten frameworkbasierten Treiber verwenden dieses Bitflag nicht. Der WdfFileObjectCanBeOptional-Wert ist in Version 1.9 und höheren Versionen von KMDF verfügbar. |
Hinweise
Die WDF_FILEOBJECT_CLASS-Enumeration wird in der WDF_FILEOBJECT_CONFIG-Struktur verwendet.
Wenn Ihr Treiber WdfRequestGetFileObject aufruft , um Frameworkdateiobjekte für E/A-Anforderungen abzurufen, und wenn Sie wissen, dass einige der WDM-E/A-Anforderungspakete (IRPs), die Ihr Treiber empfängt, keine WDM-Dateiobjekte enthalten, kann der Treiber das WdfFileObjectCanBeOptional-Bitflag festlegen.
Wenn Ihr Treiber den Wert WdfFileObjectWdfCanUseFsContext, WdfFileObjectWdfCanUseFsContext2 oder WdfFileObjectWdfCannotUseFsContexts festlegt und nicht das WdfFileObjectCanBeOptional-Bitflag festlegt, meldet die Überprüfung des Frameworks einen Fehler für die folgenden Fälle, wenn der Treiber die WdfRequestGetFileObject-Methode aufruft :
- Ein IRP enthält kein WDM-Dateiobjekt.
- Ein IRP enthält ein WDM-Dateiobjekt, aber das Dateiobjekt unterscheidet sich von dem, das das IRP für die Dateierstellung enthalten hat.
Anforderungen
Anforderung | Wert |
---|---|
KMDF-Mindestversion | 1.0 |
UMDF-Mindestversion | 2.0 |
Kopfzeile | wdfdevice.h (einschließen von Wdf.h) |