March 11, 2026
7:51 a.m.
HID child PDOs were created with DeviceType 0 and no characteristics, causing GetFileType() to return FILE_TYPE_DISK instead of FILE_TYPE_UNKNOWN. This broke .NET applications (e.g. ETS6) that use FileStream on HID device handles, as FileStream incorrectly treats FILE_TYPE_DISK handles as seekable files. Set DeviceType to FILE_DEVICE_UNKNOWN and Characteristics to FILE_AUTOGENERATED_DEVICE_NAME to match Windows behavior, and add an IRP_MJ_QUERY_VOLUME_INFORMATION handler to return these values. Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=59512 -- v2: hidclass.sys: Report correct device type for HID device objects. https://gitlab.winehq.org/wine/wine/-/merge_requests/10301