Если буква тома, нужно получить DEVICE ID усторойства, связанного с этим томом:
DEVICE ID, это не Volume Serial, поэтому GetVolumeInformation не подойдет.
The device ID format is:
IDE\t*v(40)r(8)
where t* is a device-type code of variable length, v(40) is a string containing the vendor name, an underscore, vendor's product name, and enough underscores to bring the total to 40 characters; r(8) is an 8-character revision number.
У меня получилось перечислить все устройства, и увидеть их DEV ID, но а как узнать за каким ID стоит определенный том???
Здравствуйте, Disappear, Вы писали:
D>Если буква тома, нужно получить DEVICE ID усторойства, связанного с этим томом: D>DEVICE ID, это не Volume Serial, поэтому GetVolumeInformation не подойдет.
D>The device ID format is:
D>IDE\t*v(40)r(8)
D>where t* is a device-type code of variable length, v(40) is a string containing the vendor name, an underscore, vendor's product name, and enough underscores to bring the total to 40 characters; r(8) is an 8-character revision number.
D>У меня получилось перечислить все устройства, и увидеть их DEV ID, но а как узнать за каким ID стоит определенный том???
А если на одном устройстве несколько томов?
Один из способов:
Попробуй получить интерфейс устройства, потом на него IOCTL_SCSI_GET_ADDRESS.
Теперь перечисли все тома в системе и на каждый том натрави тот же IOCTL.
В результата получишь какие тома находятся на каком устройстве.
Здравствуйте, jamj, Вы писали:
J>А если на одном устройстве несколько томов? J>Один из способов: J>Попробуй получить интерфейс устройства, потом на него IOCTL_SCSI_GET_ADDRESS.
А как мне молучить IOCTL_* зная интерфейс устройств?
J>Теперь перечисли все тома в системе и на каждый том натрави тот же IOCTL.
Это, как я понимаю делается через CreateFile и DeviceIoControl
J>В результата получишь какие тома находятся на каком устройстве.
И вот еже вопрос: Будет ли IOCTL_SCSI_GET_ADDRESS работать для USB устройст, к примеру Flash Drive.
IOCTL_SCSI_GET_INQUIRY_DATA не работает для USB removable hard drive так же как и IOCTL_SCSI_GET_ADDRESS, а мне к сожалению, нужно именно к этому устройству инфу запросить.
видимо предыдущий способ был неплох:
если я знаю GUID типа моего устройства, я могу получть какую нибудь информацию, по которой возможно однозначно найти том???