Creazione di file in base a una destinazione di I/O USB
Avviso
UMDF 2 è la versione più recente di UMDF e sostituisce UMDF 1. Tutti i nuovi driver UMDF devono essere scritti usando UMDF 2. Nessuna nuova funzionalità viene aggiunta a UMDF 1 ed è disponibile un supporto limitato per UMDF 1 nelle versioni più recenti di Windows 10. I driver di Windows universali devono usare UMDF 2.
Gli esempi di UMDF 1 archiviati sono disponibili nell'Windows 11, versione 22H2 - Aggiornamento degli esempi di driver di maggio 2022.
Per altre informazioni, vedere Introduzione con UMDF.
Durante l'inizializzazione, la destinazione di I/O USB crea un oggetto file intra stack, che rappresenta una sessione predefinita che la destinazione di I/O USB mantiene aperta. Per altre informazioni su un oggetto file intra stack, vedere Creazione di un oggetto File per gestire l'I/O. La destinazione di I/O USB o la destinazione della pipe USB usano questo oggetto file per inviare qualsiasi I/O originato (ad esempio, I/O per ottenere il descrittore di configurazione USB).
Il driver può usare questo oggetto file intra stack nelle funzioni di formato, ad esempio il driver può passare un puntatore a questo oggetto file al parametro pFile in una chiamata al metodo IWDFIoTarget::FormatRequestForRead , se il driver deve inviare I/O alla sessione predefinita dell'oggetto file. Per ottenere l'oggetto file intra stack, il driver può chiamare il metodo IWDFIoTarget::GetTargetFile .
Questo oggetto file intra stack viene chiuso quando la destinazione I/O viene eliminata in modo esplicito, quando il driver chiama il metodo IWDFObject::D eleteWdfObject sulla destinazione I/O o di destinazione o quando il padre della destinazione di I/O viene eliminato.
Se qualsiasi I/O rimane in sospeso su questo oggetto file intra stack al momento della rimozione del dispositivo, questo oggetto file non riuscirà a chiudere e UMDF genererà un arresto del driver. Per altre informazioni, vedere Creazione e uso di oggetti file Driver-Created.