Bagikan melalui


IOCTL_HID_GET_COLLECTION_DESCRIPTOR IOCTL (hidclass.h)

Permintaan IOCTL_HID_GET_COLLECTION_DESCRIPTOR mendapatkan data koleksi tingkat atas yang disiapkan, yang diekstrak driver kelas HID dari pendeskripsi laporan perangkat fisik selama inisialisasi perangkat.

Untuk informasi umum tentang perangkat HIDClass, lihat Koleksi HID.

Kode utama

IRP_MJ_DEVICE_CONTROL

Buffer input

Parameters.DeviceIoControl.OutputBufferLength di lokasi tumpukan I/O IRP menunjukkan ukuran, dalam byte, dari buffer output yang ditentukan oleh Irp-UserBuffer>.

Buffer output

Irp->UserBuffer adalah penunjuk PVOID ke buffer yang dialokasikan pemohon yang digunakan driver kelas HID untuk mengembalikan panjang variabel _HIDP_PREPARSED_DATA struktur. Buffer ini harus dialokasikan dari kumpulan yang tidak bertumpuk.

Panjang buffer output

Ukuran, dalam byte, dari struktur data yang disiapkan diperoleh menggunakan IOCTL_HID_GET_COLLECTION_INFORMATION.

Blok status

Driver kelas HID mengatur bidang Irp-IoStatus> berikut:

  • Informasi diatur ke ukuran, dalam byte, dari data yang disiapkan.
  • Status diatur ke STATUS_SUCCESS jika data yang disiapkan diambil tanpa kesalahan. Jika tidak, kode ini diatur ke kode kesalahan NTSTATUS yang sesuai. Jika buffer output yang disediakan pemohon tidak cukup besar untuk menyimpan data yang telah disiapkan, maka status diatur ke STATUS_INVALID_BUFFER_SIZE.

Keterangan

Struktur _HIDP_PREPARSED_DATA berisi data kumpulan tingkat atasyang disiapkan.

typedef struct _HIDP_PREPARSED_DATA * PHIDP_PREPARSED_DATA;

Aplikasi mode pengguna memanggil HidD_GetPreparsedData untuk mendapatkan data koleksi tingkat atas yang disiapkan dalam struktur _HIDP_PREPARSED_DATA panjang variabel.

Driver mode kernel menggunakan permintaan IOCTL_HID_GET_COLLECTION_DESCRIPTOR untuk mendapatkan penunjuk ke data koleksi tingkat atas yang telah disiapkan.

Struktur internal struktur _HIDP_PREPARSED_DATA disediakan untuk penggunaan sistem internal.

Persyaratan

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

Lihat juga

HidD_FreePreparsedData

HidD_GetPreparsedData