Condividi tramite


enumerazione WDF_FILEOBJECT_CLASS (wdfdevice.h)

[Si applica a KMDF e UMDF]

L'enumerazione WDF_FILEOBJECT_CLASS definisce i valori che identificano se un driver richiede un oggetto file framework per rappresentare un file che un'applicazione o un altro driver tenta di creare o aprire. Questi valori specificano anche dove il framework può archiviare l'handle dell'oggetto.

Sintassi

typedef enum _WDF_FILEOBJECT_CLASS {
  WdfFileObjectInvalid = 0,
  WdfFileObjectNotRequired = 1,
  WdfFileObjectWdfCanUseFsContext = 2,
  WdfFileObjectWdfCanUseFsContext2 = 3,
  WdfFileObjectWdfCannotUseFsContexts = 4,
  WdfFileObjectCanBeOptional = 0x80000000
} WDF_FILEOBJECT_CLASS, *PWDF_FILEOBJECT_CLASS;

Costanti

 
WdfFileObjectInvalid
Valore: 0
Riservato per utilizzo interno.
WdfFileObjectNotRequired
Valore: 1
Il driver non richiede un oggetto file framework.
WdfFileObjectWdfCanUseFsContext
Valore: 2
Il driver richiede un oggetto file framework. Il framework può archiviare l'handle dell'oggetto nel membro FsContext della struttura WDM (Windows Driver Model FILE_OBJECT ) del file.
WdfFileObjectWdfCanUseFsContext2
Valore: 3
Il driver richiede un oggetto file framework. Il framework può archiviare l'handle dell'oggetto nel membro FsContext2 della struttura WD FILE_OBJECT M del file.
WdfFileObjectWdfCannotUseFsContexts
Valore: 4
Il driver richiede un oggetto file framework. Il framework non può archiviare l'handle dell'oggetto nel membro FsContext o FsContext2 della struttura WD FILE_OBJECT M del file, perché uno o più driver usano questi membri. Pertanto, il framework deve archiviare internamente l'handle.
WdfFileObjectCanBeOptional
Valore: 0x80000000
Il driver richiede in genere un oggetto file framework, ma il driver può anche gestire situazioni speciali in cui un oggetto file framework manca o diverso. Per altre informazioni su queste situazioni, vedere la sezione Osservazioni seguenti.

WdfFileObjectCanBeOptional è un flag bit che il driver può OR con il valore dell'enumeratore WdfFileObjectWdfCanUseFsContext, WdfFileObjectWdfCantext2 o WdfFileObjectWdfCannotUseFsContexts .

La maggior parte dei driver basati su framework non usa questo flag di bit.

Il valore WdfFileObjectCanBeOptional è disponibile nella versione 1.9 e versioni successive di KMDF.

Commenti

L'enumerazione WDF_FILEOBJECT_CLASS viene usata nella struttura WDF_FILEOBJECT_CONFIG .

Se il driver chiama WdfRequestGetFileObject per ottenere oggetti file framework per le richieste di I/O e se si sa che alcuni pacchetti di richieste di I/O WDM (IRP) che il driver riceve non include oggetti file WDM, il driver può impostare il flag di bit WdfFileObjectCanBeOptional .

Se il driver imposta il valore WdfFileObjectWdfCanUseFsContext, WdfFileObjectWdfCanUseFsContext2 o WdfFileObjectWdfCannotUseFsContexts e non imposta il flag bit WdfFileObjectCanBeOptional, il verificatore del framework segnala un errore per i casi seguenti quando il driver chiama il metodo WdfRequestGetFileObject:

  • Un'IRP non include un oggetto file WDM.
  • Un'IRP include un oggetto file WDM, ma l'oggetto file è diverso da quello incluso nell'IRP di creazione del file.
Se il flag di bit WdfFileObjectCanBeOptional è impostato, il verificatore del framework ignora tali casi.

Requisiti

Requisito Valore
Versione KMDF minima 1,0
Versione UMDF minima 2,0
Intestazione wdfdevice.h (includere Wdf.h)

Vedi anche

FILE_OBJECT

WDF_FILEOBJECT_CONFIG