mirror of
https://github.com/pbatard/rufus.git
synced 2024-08-14 23:57:05 +00:00
Merge 58b526048a
into 3f0d9d108f
This commit is contained in:
commit
bbfcc9e3b4
1 changed files with 27 additions and 22 deletions
11
src/rufus.c
11
src/rufus.c
|
@ -633,7 +633,7 @@ static BOOL GetUSBDevices(DWORD devnum)
|
||||||
// The rest are the vendor UASP drivers I know of so far - list may be incomplete!
|
// The rest are the vendor UASP drivers I know of so far - list may be incomplete!
|
||||||
const char* storage_name[] = { "USBSTOR", "UASPSTOR", "VUSBSTOR", "ETRONSTOR" };
|
const char* storage_name[] = { "USBSTOR", "UASPSTOR", "VUSBSTOR", "ETRONSTOR" };
|
||||||
const char* scsi_name = "SCSI";
|
const char* scsi_name = "SCSI";
|
||||||
const char* vhd_name = "Microsoft Virtual Disk";
|
const char* vhd_name[] = { "Microsoft Virtual Disk", "Msft Virtual Disk SCSI Disk Device" };
|
||||||
char letter_name[] = " (?:)";
|
char letter_name[] = " (?:)";
|
||||||
BOOL found = FALSE, is_SCSI, is_UASP, is_VHD;
|
BOOL found = FALSE, is_SCSI, is_UASP, is_VHD;
|
||||||
HDEVINFO dev_info = NULL;
|
HDEVINFO dev_info = NULL;
|
||||||
|
@ -713,9 +713,13 @@ static BOOL GetUSBDevices(DWORD devnum)
|
||||||
uprintf("SetupDiGetDeviceRegistryProperty (Friendly Name) failed: %s\n", WindowsErrorString());
|
uprintf("SetupDiGetDeviceRegistryProperty (Friendly Name) failed: %s\n", WindowsErrorString());
|
||||||
// We can afford a failure on this call - just replace the name with "USB Storage Device (Generic)"
|
// We can afford a failure on this call - just replace the name with "USB Storage Device (Generic)"
|
||||||
safe_strcpy(buffer, sizeof(buffer), lmprintf(MSG_045));
|
safe_strcpy(buffer, sizeof(buffer), lmprintf(MSG_045));
|
||||||
} else if (safe_stricmp(buffer, vhd_name) == 0) {
|
|
||||||
is_VHD = TRUE;
|
|
||||||
} else {
|
} else {
|
||||||
|
for (j = 0; j < ARRAYSIZE(vhd_name); j++) {
|
||||||
|
if (safe_stricmp(buffer, vhd_name[j]) == 0) {
|
||||||
|
is_VHD = TRUE;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (is_VHD == FALSE) {
|
||||||
// Get the VID:PID of the device. We could avoid doing this lookup every time by keeping
|
// Get the VID:PID of the device. We could avoid doing this lookup every time by keeping
|
||||||
// a lookup table, but there shouldn't be that many USB storage devices connected...
|
// a lookup table, but there shouldn't be that many USB storage devices connected...
|
||||||
for (devid = devid_list; *devid; devid += strlen(devid) + 1) {
|
for (devid = devid_list; *devid; devid += strlen(devid) + 1) {
|
||||||
|
@ -740,6 +744,7 @@ static BOOL GetUSBDevices(DWORD devnum)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
if (is_VHD) {
|
if (is_VHD) {
|
||||||
uprintf("Found VHD device '%s'\n", buffer);
|
uprintf("Found VHD device '%s'\n", buffer);
|
||||||
} else {
|
} else {
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue