Bagikan melalui


IOCTL_USBPRINT_GET_1284_ID IOCTL (usbprint.h)

Kode kontrol IOCTL_USBPRINT_GET_1284_ID memungkinkan perangkat lunak lapisan atas (seperti monitor bahasa), untuk meminta dan mendapatkan string ID perangkat IEEE 1284 printer.

Kode utama

IRP_MJ_DEVICE_CONTROL

Buffer input

Tidak digunakan dalam operasi ini; atur parameter ini ke NULL.

Panjang buffer input

Tidak digunakan dalam operasi ini; atur parameter ini ke 0.

Buffer output

Buffer output akan berisi data UCHAR. Setelah berhasil, buffer ini dapat menyimpan yang berikut: awalan dua byte yang menentukan ukuran, dalam byte, dari ID perangkat IEEE 1284 perangkat; ID perangkat; dan terminator null. ID perangkat IEEE 1284 dapat berukuran hingga 64 KB. Jika gagal, jika GetLastError mengembalikan kode kesalahan STATUS_BUFFER_TOO_SMALL, buffer output tidak cukup besar untuk menyimpan data yang ditujukan untuk itu.

Panjang buffer output

Buffer output harus cukup besar untuk berisi kuantitas dua byte yang menahan panjang ID perangkat IEEE 1284 perangkat, ID perangkat (berukuran hingga 64 KB), dan null yang mengakhiri.

Panjang buffer output IOCTL_USBPRINT_GET_1284_ID ditempatkan langsung ke dalam paket USB. Pada beberapa perangkat cetak USB, menggunakan maksimum 65535 byte dapat menyebabkan panggilan gagal dengan kesalahan 23. Kurangi buffer menjadi 4094 byte atau kurang untuk mengatasi masalah ini.

Blok status

Irp->IoStatus.Status diatur ke STATUS_SUCCESS jika permintaan berhasil. Jika tidak, Status ke kondisi kesalahan yang sesuai sebagai kode NTSTATUS .

Persyaratan

Persyaratan Nilai
Header usbprint.h

Lihat juga

Membuat Permintaan IOCTL di Driver

WdfIoTargetSendInternalIoctlOthersSynchronously

WdfIoTargetSendInternalIoctlSynchronously

WdfIoTargetSendIoctlSynchronously