Fungsi WdfDmaTransactionSetTransferCompleteCallback (wdfdmatransaction.h)

[Berlaku untuk KMDF saja]

Metode WdfDmaTransactionSetTransferCompleteCallback mendaftarkan fungsi panggilan balik peristiwa penyelesaian transfer untuk transaksi DMA mode sistem.

Sintaks

void WdfDmaTransactionSetTransferCompleteCallback(
  [in]           WDFDMATRANSACTION                             DmaTransaction,
  [in, optional] PFN_WDF_DMA_TRANSACTION_DMA_TRANSFER_COMPLETE DmaCompletionRoutine,
  [in, optional] PVOID                                         DmaCompletionContext
);

Parameter

[in] DmaTransaction

Handel ke objek transaksi DMA yang diinisialisasi untuk mengatur atau menghapus panggilan balik penyelesaian transfer.

[in, optional] DmaCompletionRoutine

Penunjuk ke fungsi panggilan balik peristiwa EvtDmaTransactionDmaTransferComplete driver, atau NULL untuk menghapus fungsi panggilan balik yang ditetapkan sebelumnya.

[in, optional] DmaCompletionContext

Penunjuk ke buffer yang berisi konteks yang ditentukan driver untuk diberikan ke fungsi panggilan balik peristiwa EvtDmaTransactionDmaTransferComplete driver, atau NULL.

Nilai kembali

Tidak ada

Keterangan

Driver memanggil metode ini untuk mengatur rutinitas penyelesaian yang dipanggil kerangka kerja setelah pengontrol DMA sistem menyelesaikan transfer. Kerangka kerja memanggil panggilan balik EvtDmaTransactionDmaTransferComplete driver sekali untuk setiap transfer dalam transaksi.

Biasanya dari dalam fungsi panggilan balik peristiwa antrean I/O, driver melakukan langkah-langkah berikut, dalam urutan ini:

  1. Memanggil WdfDmaTransactionInitializeUsingRequest, WdfDmaTransactionInitialize, atau WdfDmaTransactionInitializeUsingOffset untuk menginisialisasi objek transaksi.
  2. Memanggil WdfDmaTransactionSetTransferCompleteCallback pada objek transaksi.
  3. Memanggil WdfDmaTransactionExecute.
Jika driver telah menentukan fungsi panggilan balik peristiwa EvtDmaTransactionDmaTransferComplete dengan memanggil WdfDmaTransactionSetTransferCompleteCallback dan driver kemudian memanggil WdfDmaTransactionRelease, panggilan balik dibersihkan.

WdfDmaTransactionSetTransferCompleteCallback hanya dapat digunakan dengan pengaktif DMA yang menentukan profil DMA mode sistem.

Jika driver Anda memanggil metode ini pada sistem operasi lebih awal dari Windows 8, pemverifikasi kerangka kerja melaporkan kesalahan.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows 8
Target Platform Universal
Versi KMDF minimum 1.11
Header wdfdmatransaction.h (termasuk Wdf.h)
Pustaka Wdf01000.sys (lihat Penerapan Versi Pustaka Kerangka Kerja.)
IRQL <=DISPATCH_LEVEL
Aturan kepatuhan DDI DriverCreate(kmdf)

Lihat juga

EvtDmaTransactionDmaTransferComplete

WdfDmaTransactionRelease