检测SD卡驱动器

时间:2015-11-12 08:31:26

标签: c# windows winapi mfc sd-card

我的程序需要在所有本地驱动器中找到SD卡。可以轻松识别可移动驱动器(使用GetLogicalDrivesStrings()GetDriveType()),但知道哪些是真正的SD卡似乎更难。

有很多问题(包括herehereherehere)但没有完整的答案(很多都关注USB)。有人说不可能将SD卡与USB区分开,但是Windows资源管理器会为SD卡显示不同的驱动器图标(至少在Windows 7中),因此它确实区分了哪个。

代码不是基于WMI的额外奖励,因为我的程序仍在使用本机Win32 / MFC!某些DeviceIoControl()属性可以提供帮助吗?现在,如果有人拥有C#/。NET解决方案,我仍然很乐意阅读它!

1 个答案:

答案 0 :(得分:0)

Should be possible with DevicePowerEnumDevices

A USB Flash Drive should have PDCAP_D2_SUPPORTED under "Power data" in Device Manager, but not a memory card.

See discussion here