Bagikan melalui


fungsi panggilan balik EVT_SERCX2_PIO_TRANSMIT_CLEANUP_TRANSACTION (sercx.h)

Fungsi panggilan balik peristiwa EvtSerCx2PioTransmitCleanupTransaction dipanggil oleh versi 2 dari ekstensi kerangka kerja serial (SerCx2) untuk membersihkan status pengontrol serial setelah transaksi pengiriman PIO berakhir.

Sintaks

EVT_SERCX2_PIO_TRANSMIT_CLEANUP_TRANSACTION EvtSercx2PioTransmitCleanupTransaction;

void EvtSercx2PioTransmitCleanupTransaction(
  [in] SERCX2PIOTRANSMIT PioTransmit
)
{...}

Parameter

[in] PioTransmit

Handel SERCX2PIOTRANSMIT ke objek transmisi PIO. Driver pengontrol serial sebelumnya disebut metode SerCx2PioTransmitCreate untuk membuat objek ini.

Nilai kembali

Tidak ada

Keterangan

Driver pengontrol serial Anda dapat, sebagai opsi, menerapkan fungsi ini. Jika diimplementasikan, driver mendaftarkan fungsi dalam panggilan SerCx2PioTransmitCreate yang membuat objek transmisi PIO.

Driver pengontrol serial Anda harus mengimplementasikan fungsi EvtSerCx2PioTransmitCleanupTransaction jika perlu membersihkan status pengontrol serial di akhir transaksi pengiriman PIO. SerCx2 memanggil fungsi ini, jika diimplementasikan, setelah transaksi transmisi PIO berakhir. Menanggapi panggilan EvtSerCx2PioTransmitCleanupTransaction , driver pengontrol serial harus memanggil metode SerCx2PioTransmitCleanupTransactionComplete untuk memberi tahu SerCx2 setelah pekerjaan pembersihan selesai.

Untuk informasi selengkapnya, lihat SerCx2 PIO-Transmit Transactions.

Contoh

Untuk menentukan fungsi panggilan balik EvtSerCx2PioTransmitCleanupTransaction , Anda harus terlebih dahulu memberikan deklarasi fungsi yang mengidentifikasi jenis fungsi panggilan balik yang Anda tentukan. Windows menyediakan sekumpulan tipe fungsi panggilan balik untuk pengandar. Mendeklarasikan fungsi menggunakan jenis fungsi panggilan balik membantu Analisis Kode untuk Driver, Pemverifikasi Driver Statis (SDV), dan alat verifikasi lainnya menemukan kesalahan, dan itu adalah persyaratan untuk menulis driver untuk sistem operasi Windows.

Misalnya, untuk menentukan fungsi panggilan balik EvtSerCx2PioTransmitCleanupTransaction yang diberi nama MyPioTransmitCleanupTransaction, gunakan jenis fungsi EVT_SERCX2_PIO_TRANSMIT_CLEANUP_TRANSACTION , seperti yang ditunjukkan dalam contoh kode ini:

EVT_SERCX2_PIO_TRANSMIT_CLEANUP_TRANSACTION  MyPioTransmitCleanupTransaction;

Kemudian, terapkan fungsi panggilan balik Anda sebagai berikut:

_Use_decl_annotations_
VOID
  MyPioTransmitCleanupTransaction(
    SERCX2PIOTRANSMIT  PioTransmit
    )
  {...}

Jenis fungsi EVT_SERCX2_PIO_TRANSMIT_CLEANUP_TRANSACTION ditentukan dalam file header Sercx.h. Untuk mengidentifikasi kesalahan secara lebih akurat saat Anda menjalankan alat analisis kode, pastikan untuk menambahkan anotasi Use_decl_annotations ke definisi fungsi Anda. Anotasi Use_decl_annotations memastikan bahwa anotasi yang diterapkan ke jenis fungsi EVT_SERCX2_PIO_TRANSMIT_CLEANUP_TRANSACTION dalam file header digunakan. Untuk informasi selengkapnya tentang persyaratan untuk deklarasi fungsi, lihat Mendeklarasikan Fungsi dengan Menggunakan Jenis Peran Fungsi untuk Driver KMDF. Untuk informasi selengkapnya tentang Use_decl_annotations, lihat Perilaku Fungsi Anotasi.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Tersedia dimulai dengan Windows 8.1.
Target Platform Desktop
Header sercx.h
IRQL Dipanggil di IRQL <= DISPATCH_LEVEL.

Lihat juga

SERCX2PIOTRANSMIT

SerCx2PioTransmitCleanupTransactionComplete

SerCx2PioTransmitCreate