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)

Vedi anche

WdfDmaTransactionInitialize