Bagikan melalui


IOCTL_SET_NUM_DEVICE_INPUT_BUFFERS IOCTL (hidclass.h)

Permintaan IOCTL_SET_NUM_DEVICE_INPUT_BUFFERS menetapkan jumlah buffer untuk antrean laporan input koleksi tingkat atas.

Setiap antrean laporan input diimplementasikan sebagai buffer cincin. Jika koleksi mengirimkan data ke driver kelas HID lebih cepat daripada yang dapat dibaca driver, beberapa data mungkin hilang. Untuk mencegah jenis kehilangan ini, Anda dapat menggunakan permintaan IOCTL_SET_NUM_DEVICE_INPUT_BUFFERS untuk menyesuaikan jumlah buffer yang dikandung antrean laporan input. Driver kelas HID memerlukan minimal dua buffer input. Pada Windows 2000, jumlah maksimum buffer input yang didukung driver kelas HID adalah 200, dan pada Windows XP dan yang lebih baru, jumlah maksimum buffer input yang didukung driver kelas HID adalah 512. Jumlah default buffer input adalah 32.

Untuk informasi umum tentang perangkat HIDClass, lihat Koleksi HID.

Kode utama

IRP_MJ_DEVICE_CONTROL

Buffer input

Irp->AssociatedIrp.SystemBuffer menunjuk ke buffer input berukuran ULONG yang menerima jumlah buffer baru untuk antrean laporan input.

Parameters.DeviceIoControl.InputBufferLength di lokasi tumpukan I/O IRP berisi ukuran, dalam byte, dari buffer input di Irp-AssociatedIrp.SystemBuffer>. Ukuran ini harus sizeof(ULONG).

Panjang buffer input

Ukuran ULONG.

Buffer output

Tidak ada.

Panjang buffer output

Tidak ada.

Blok status

Jika permintaan berhasil, driver kelas HID mengatur bidang StatusIrp-IoStatus> ke STATUS_SUCCESS; jika tidak, ia mengatur bidang Status ke kode kesalahan NTSTATUS yang sesuai.

Persyaratan

Persyaratan Nilai
Header hidclass.h (termasuk Hidclass.h)

Lihat juga

HidD_GetNumInputBuffers