https://bugs.winehq.org/show_bug.cgi?id=37166
Bug ID: 37166 Summary: Multiple apps fail to detect removable (USB) disk devices (PNP device manager '{53F56307-B6BF-11D0-94F2-00A0C91EFB8B}' device class GUID registry data missing)(TomTom, iTunes, Rufus) Product: Wine Version: 1.7.25 Hardware: x86 OS: Linux Status: NEW Severity: normal Priority: P2 Component: -unknown Assignee: wine-bugs@winehq.org Reporter: focht@gmx.net
Hello folks,
continuation of bug 7711 and potentially others to avoid them being recycled over and over again.
GUID '{53F56307-B6BF-11D0-94F2-00A0C91EFB8B}' -> GUID_DEVINTERFACE_DISK
MSDN: http://msdn.microsoft.com/en-us/library/windows/hardware/ff545824%28v=vs.85%...
Additionally the apps usually expect GUID '{F18A0E88-C30C-11D0-8815-00A0C906BED8}' class too -> GUID_DEVINTERFACE_USB_HUB
http://msdn.microsoft.com/en-us/library/windows/hardware/ff545982%28v=vs.85%...:
Example trace log with 'Rufus':
--- snip --- $ WINEDEBUG=+tid,+seh,+relay,+setupapi wine ./rufus-1.4.10.exe >>log.txt 2>&1 ... 0023:Call setupapi.SetupDiGetClassDevsA(004448fc,00000000,00000000,00000012) ret=0040ef60 0023:trace:setupapi:SetupDiGetClassDevsExW {f18a0e88-c30c-11d0-8815-00a0c906bed8} (null) (nil) 0x00000012 (nil) (null) (nil) 0023:warn:setupapi:SetupDiGetClassDevsExW unsupported flags 00000002 0023:trace:setupapi:SetupDiCreateDeviceInfoListExW {f18a0e88-c30c-11d0-8815-00a0c906bed8} (nil) (null) (nil) ... 0023:Call advapi32.RegOpenKeyExW(80000002,7e2e3bc0 L"System\CurrentControlSet\Control\DeviceClasses",00000000,00020019,0077e944) ret=7e2bf207 0023:Ret advapi32.RegOpenKeyExW() retval=00000002 ret=7e2bf207 0023:trace:setupapi:SETUPDI_EnumerateInterfaces 0x1e2408, {f18a0e88-c30c-11d0-8815-00a0c906bed8}, (null), 00000012 ... 0023:Ret setupapi.SetupDiGetClassDevsA() retval=001e2408 ret=0040ef60 ... 0023:Call setupapi.SetupDiEnumDeviceInfo(001e2408,00000000,0077ec91) ret=0040efd3 0023:trace:setupapi:SetupDiEnumDeviceInfo 0x1e2408 0 0x77ec91 0023:Ret setupapi.SetupDiEnumDeviceInfo() retval=00000000 ret=0040efd3 0023:Call setupapi.SetupDiDestroyDeviceInfoList(001e2408) ret=0040ef91 0023:trace:setupapi:SetupDiDestroyDeviceInfoList 0x1e2408 ... 0023:Ret setupapi.SetupDiDestroyDeviceInfoList() retval=00000001 ret=0040ef91 ... 0023:Call setupapi.CM_Get_Device_ID_List_SizeA(0077ec24,004448b2 "USBSTOR",00000002) ret=0040f260 0023:fixme:setupapi:CM_Get_Device_ID_List_SizeA 0x77ec24 "USBSTOR" 0x00000002: stub 0023:Ret setupapi.CM_Get_Device_ID_List_SizeA() retval=00000000 ret=0040f260 0023:Call setupapi.CM_Get_Device_ID_List_SizeA(0077ec28,004448ba "UASPSTOR",00000002) ret=0040f260 0023:fixme:setupapi:CM_Get_Device_ID_List_SizeA 0x77ec28 "UASPSTOR" 0x00000002: stub 0023:Ret setupapi.CM_Get_Device_ID_List_SizeA() retval=00000000 ret=0040f260 0023:Call setupapi.CM_Get_Device_ID_List_SizeA(0077ec2c,004448c3 "VUSBSTOR",00000002) ret=0040f260 0023:fixme:setupapi:CM_Get_Device_ID_List_SizeA 0x77ec2c "VUSBSTOR" 0x00000002: stub 0023:Ret setupapi.CM_Get_Device_ID_List_SizeA() retval=00000000 ret=0040f260 0023:Call setupapi.CM_Get_Device_ID_List_SizeA(0077ec30,004448cc "ETRONSTOR",00000002) ret=0040f260 0023:fixme:setupapi:CM_Get_Device_ID_List_SizeA 0x77ec30 "ETRONSTOR" 0x00000002: stub 0023:Ret setupapi.CM_Get_Device_ID_List_SizeA() retval=00000000 ret=0040f260 0023:Call setupapi.SetupDiGetClassDevsA(0044490c,00000000,00000000,00000012) ret=0040f350 0023:trace:setupapi:SetupDiGetClassDevsExW {53f56307-b6bf-11d0-94f2-00a0c91efb8b} (null) (nil) 0x00000012 (nil) (null) (nil) 0023:warn:setupapi:SetupDiGetClassDevsExW unsupported flags 00000002 0023:trace:setupapi:SetupDiCreateDeviceInfoListExW {53f56307-b6bf-11d0-94f2-00a0c91efb8b} (nil) (null) (nil) ... 0023:Call advapi32.RegOpenKeyExW(80000002,7e2e3bc0 L"System\CurrentControlSet\Control\DeviceClasses",00000000,00020019,0077e944) ret=7e2bf207 0023:Ret advapi32.RegOpenKeyExW() retval=00000002 ret=7e2bf207 0023:trace:setupapi:SETUPDI_EnumerateInterfaces 0x1e2408, {53f56307-b6bf-11d0-94f2-00a0c91efb8b}, (null), 00000012 ... 0023:Ret setupapi.SetupDiGetClassDevsA() retval=001e2408 ret=0040f350 0023:Call setupapi.SetupDiEnumDeviceInfo(001e2408,00000000,0077ec91) ret=0040f3c2 0023:trace:setupapi:SetupDiEnumDeviceInfo 0x1e2408 0 0x77ec91 0023:Ret setupapi.SetupDiEnumDeviceInfo() retval=00000000 ret=0040f3c2 0023:Call setupapi.SetupDiDestroyDeviceInfoList(001e2408) ret=004103c6 0023:trace:setupapi:SetupDiDestroyDeviceInfoList 0x1e2408 ... 0023:Ret setupapi.SetupDiDestroyDeviceInfoList() retval=00000001 ret=004103c6 ... 0023:Call KERNEL32.OutputDebugStringA(004640d4 "0 devices found\r\n") ret=004164fb ... 0023:Ret KERNEL32.OutputDebugStringA() retval=00000000 ret=004164fb ... --- snip ---
$ sha1sum rufus-1.4.10.exe 031309c159429544a4e8bec0373d474c8e705c3e rufus-1.4.10.exe
$ du -sh rufus-1.4.10.exe 1.4M rufus-1.4.10.exe
$ wine --version wine-1.7.25
Regards