IOCTL_HID_GET_SERIALNUMBER_STRING IOCTL (hidclass.h)
IOCTL_HID_GET_SERIALNUMBER_STRING要求會取得 最上層集合 內嵌字元串,以識別裝置的序號。 擷取的字串是以人類可讀取的格式,以 NULL 終止的寬字元字串。
如需 HIDClass 裝置的一般資訊,請參閱 HID 集合。
主要程序代碼
輸入緩衝區
Parameters.DeviceIoControl.OutputBufferLength 在 IRP 的 I/O 堆棧位置,指出輸出緩衝區的大小,以位元組為單位。 如果輸出緩衝區不夠大,無法保存整個NULL終止的內嵌字串,則要求不會在輸出緩衝區中傳回任何內容。
輸入緩衝區長度
內嵌字串中可能的最大字元數是裝置特定。 針對USB裝置,字串長度上限為126寬字元(不包括終止的NULL字元)。
輸出緩衝區
Irp->MdlAddress 指向緩衝區,以接收序號字串(以 NULL 終止的寬字元字串)。
輸出緩衝區長度
NULL 終止寬字元字串的長度。 提供的緩衝區必須 <= 4093 個字節(2^12 – 3)。
狀態區塊
HID 類別驅動程式會設定下列字段 Irp->IoStatus:
資訊 會設定為從裝置傳輸的位元元組數目。
如果傳輸未發生錯誤,狀態 會設定為STATUS_SUCCESS。 否則,它會設定為適當的NTSTATUS錯誤碼。
要求
要求 | 價值 |
---|---|
標頭 | hidclass.h (include Hidclass.h) |