Я хочу определить, когда SD-карта (или другая карта) вставлена в устройство чтения карт.Я знаю о WM_DEVICECHANGE
, но мне нужно получить конкретную информацию о типе устройства с учетом буквы диска.Например, я хочу отличить любую карту в картридере от «обычной» флешки.GetDriveType()
не кажется достаточно утонченным.Какие у меня есть другие варианты?
Я доволен решением Windows 7.Мне не нужна обратная совместимость.
Возможно ли все это уточнение?
Я нашел эту тему , которая не дает удовлетворительного ответа. Этот выглядит как путь, но нет примера кода или указателей на образец кода.Невероятно, что никто не собрал рабочий образец для такого распространенного запроса.
[EDIT]
Я также нашел это .В приведенном примере есть несколько ошибок, но после исправления я все равно не получаю никакого результата.Для устройства, в которое вставлена SD-карта, я получаю BusTypeUnknown
вместо BusTypeSd
в pDeviceDesc.BusType
.Это казалось простым и все же не удалось.