Funzione WdfDmaTransactionInitializeUsingOffset (wdfdmatransaction.h)
[Si applica solo a KMDF]
Il metodo WdfDmaTransactionInitializeUsingOffset inizializza una transazione DMA specificata utilizzando un offset di byte in una catena MDL.
Sintassi
NTSTATUS WdfDmaTransactionInitializeUsingOffset(
[in] WDFDMATRANSACTION DmaTransaction,
[in] PFN_WDF_PROGRAM_DMA EvtProgramDmaFunction,
[in] WDF_DMA_DIRECTION DmaDirection,
[in] PMDL Mdl,
[in] size_t Offset,
[in] size_t Length
);
Parametri
[in] DmaTransaction
Handle per un oggetto transazione DMA ottenuto dal driver da una chiamata precedente a WdfDmaTransactionCreate.
[in] EvtProgramDmaFunction
Puntatore alla funzione di callback dell'evento EvtProgramDma del driver.
[in] DmaDirection
Valore tipizzato WDF_DMA_DIRECTION.
[in] Mdl
Puntatore a un elenco di descrittori di memoria (MDL) che descrive il buffer che verrà usato per la transazione DMA. Per altre informazioni, vedere la sezione Osservazioni.
[in] Offset
Offset di byte nella catena MDL per la transazione corrente.
[in] Length
Numero di byte da trasferire. Il valore deve essere maggiore di zero.
Valore restituito
WdfDmaTransactionInitializeUsingOffset restituisce STATUS_SUCCESS se l'operazione ha esito positivo. In caso contrario, il metodo potrebbe restituire uno dei valori descritti nella sezione Valori restituiti di WdfDmaTransactionInitialize.
Questo metodo potrebbe anche restituire altri valori NTSTATUS.
Se il driver fornisce un handle di oggetto non valido, si verifica un controllo di bug.
Commenti
WdfDmaTransactionInitializeUsingOffset equivale a WdfDmaTransactionInitialize , ad eccezione del fatto che accetta un offset nel buffer descritto dalla catena MDL anziché da un indirizzo virtuale.
Il driver può specificare una catena MDL nel parametro Mdl di questo metodo. Una catena MDL è una sequenza di strutture MDL concatenate dal driver usando il membro Next della struttura MDL.
Requisiti
Requisito | Valore |
---|---|
Piattaforma di destinazione | Universale |
Versione KMDF minima | 1.11 |
Intestazione | wdfdmatransaction.h (include Wdf.h) |
Libreria | Wdf01000.sys (vedere Controllo delle versioni della libreria framework). |
IRQL | <=DISPATCH_LEVEL |
Regole di conformità DDI | DriverCreate(kmdf) |