enumeración WDF_FILEOBJECT_CLASS (wdfdevice.h)
[Se aplica a KMDF y UMDF]
La enumeración WDF_FILEOBJECT_CLASS define valores que identifican si un controlador requiere un objeto de archivo de marco para representar un archivo que una aplicación u otro controlador está intentando crear o abrir. Estos valores también especifican dónde puede almacenar el marco de trabajo el identificador del objeto.
Sintaxis
typedef enum _WDF_FILEOBJECT_CLASS {
WdfFileObjectInvalid = 0,
WdfFileObjectNotRequired = 1,
WdfFileObjectWdfCanUseFsContext = 2,
WdfFileObjectWdfCanUseFsContext2 = 3,
WdfFileObjectWdfCannotUseFsContexts = 4,
WdfFileObjectCanBeOptional = 0x80000000
} WDF_FILEOBJECT_CLASS, *PWDF_FILEOBJECT_CLASS;
Constantes
WdfFileObjectInvalid Valor: 0 Reservado para uso interno. |
WdfFileObjectNotRequired Valor: 1 El controlador no requiere un objeto de archivo de marco. |
WdfFileObjectWdfCanUseFsContext Valor: 2 El controlador requiere un objeto de archivo de marco. El marco puede almacenar el identificador del objeto en el FsContext miembro del modelo de controlador de Windows (WDM) del archivo FILE_OBJECT estructura. |
WdfFileObjectWdfCanUseFsContext2 Valor: 3 El controlador requiere un objeto de archivo de marco. El marco de trabajo puede almacenar el identificador del objeto en el FsContext2 miembro de la estructura FILE_OBJECT WDM del archivo. |
WdfFileObjectWdfCannotUseFsContexts Valor: 4 El controlador requiere un objeto de archivo de marco. El marco no puede almacenar el identificador del objeto en el FsContext o FsContext2 miembro del FILE_OBJECT WDM del archivo, ya que uno o varios controladores usan estos miembros. Por lo tanto, el marco de trabajo debe almacenar el identificador internamente. |
WdfFileObjectCanBeOptional Valor: 0x80000000 Normalmente, el controlador requiere un objeto de archivo de marco, pero el controlador también puede controlar situaciones especiales en las que falta un objeto de archivo de marco o diferente. Para obtener más información sobre estas situaciones, vea la siguiente sección Comentarios. WdfFileObjectCanBeOptional es una marca de bits que el controlador puede orar con el WdfFileObjectWdfCanUseFsContext, WdfFileObjectWdfCanUseFsContext2, o WdfFileObjectWdfCannotUseFsContexts valor del enumerador. La mayoría de los controladores basados en marcos no usan esta marca de bits. El WdfFileObjectCanBeOptional está disponible en la versión 1.9 y versiones posteriores de KMDF. |
Observaciones
La enumeración WDF_FILEOBJECT_CLASS se usa en la estructura WDF_FILEOBJECT_CONFIG.
Si el controlador llama a WdfRequestGetFileObject para obtener objetos de archivo de marco para solicitudes de E/S, y si sabe que algunos de los paquetes de solicitud de E/S de WDM (IRP) que recibe el controlador no incluyen objetos de archivo WDM, el controlador puede establecer la marca de bits WdfFileObjectCanBeOptional.
Si el controlador establece el WdfFileObjectWdfCanUseFsContext, WdfFileObjectWdfCanUseFsContext2, o WdfFileObjectWdfCannotUseFsContexts valor y no establece el marca de bits WdfFileObjectCanBeOption al, el comprobador del marco notifica un error para los casos siguientes cuando el controlador llama al método WdfRequestGetFileObject:
- Un IRP no incluye un objeto de archivo WDM.
- Un IRP incluye un objeto de archivo WDM, pero el objeto de archivo es diferente del que incluyó el IRP de creación del archivo.
Requisitos
Requisito | Valor |
---|---|
versión mínima de KMDF | 1.0 |
versión mínima de UMDF | 2.0 |
encabezado de | wdfdevice.h (incluya Wdf.h) |