Bagikan melalui


Fungsi SerCxProgressTransmit (sercx.h)

Metode SerCxProgressTransmit melaporkan kemajuan operasi tulis (transmisi) saat ini.

Sintaks

NTSTATUS SerCxProgressTransmit(
  [in] WDFDEVICE    Device,
  [in] ULONG        BytesTransmitted,
  [in] SERCX_STATUS TransmitStatus
);

Parameter

[in] Device

Handel WDFDEVICE ke objek perangkat kerangka kerja yang mewakili pengontrol serial.

[in] BytesTransmitted

Jumlah byte data yang disalin pemanggil dari buffer transmisi yang diperoleh dengan panggilan terbaru ke metode SerCxRetrieveTransmitBuffer .

[in] TransmitStatus

Status operasi pengiriman saat ini. Atur parameter ini ke salah satu nilai berikut:

  • SerCxStatusSuccess
  • SerCxStatusCancelled
Untuk informasi selengkapnya tentang nilai-nilai ini, lihat SERCX_STATUS.
Catatan Nilai SerCxStatusTimeout hanya valid untuk operasi penerimaan. Tidak ada batas waktu interval yang dapat ditentukan untuk operasi transmisi. Untuk informasi selengkapnya, lihat SERIAL_TIMEOUTS.
 

Nilai kembali

SerCxProgressTransmit mengembalikan STATUS_SUCCESS jika berhasil. Kemungkinan nilai pengembalian kesalahan mencakup kode status berikut.

Menampilkan kode Deskripsi
STATUS_INVALID_PARAMETER
Nilai BytesTransmitted melebihi panjang buffer yang tersedia; atau nilai TransmitStatus tidak valid.
STATUS_INVALID_DEVICE_REQUEST
Metode ini dipanggil pada IRQL yang salah; atau handel WDFDEVICE tidak valid; atau driver belum mendapatkan buffer output untuk operasi pengiriman ini.
STATUS_CANCELLED
Operasi pengiriman telah dibatalkan.

Keterangan

Driver pengontrol serial memanggil metode ini untuk melaporkan kemajuan pada operasi tulis yang luar biasa. Biasanya, driver pengontrol serial memanggil metode ini dari panggilan balik penyelesaian DMA-nya (jika driver menggunakan DMA untuk membaca data) atau dari fungsi DPC pengiriman/penerimaannya (jika PIO digunakan).

Jika panggilan SerCxProgressTransmit tidak menyelesaikan semua pekerjaan yang luar biasa untuk operasi tulis, pemanggil harus memanggil SerCxRetrieveTransmitBuffer lagi untuk mendapatkan deskriptor buffer baru dan terus mengirimkan data.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Tersedia dimulai dengan Windows 8.
Target Platform Universal
Header sercx.h
IRQL <= DISPATCH_LEVEL

Lihat juga

SERCX_STATUS

SERIAL_TIMEOUTS

SerCxRetrieveTransmitBuffer