如何在Windows中获得SD卡的实际大小?

时间:2009-09-04 17:56:51

标签: windows removable-drive

我们正在使用一个小型的自制基于Windows的工具来编写操作系统,图像和包含SD卡上数据的FAT分区,然后将其用作嵌入式设备作为引导介质和数据存储。

我目前正在使用IOCTL_DISK_GET_DRIVE_GEOMETRY来获取SD卡的大小。但是,由于CHS格式的限制,它不是SD卡的实际大小。这不是一个大问题,因为只浪费了几个扇区,但是使用卡上的所有可用空间会很好。

有没有更好的方法来获得驱动器的大小?记住,我对分区大小不感兴趣。我需要能够在SD卡上访问的总字节数(或扇区数)。此外,驱动器可能没有格式化(正确 - 我的工具创建 “太小的”分区)并首先用Windows格式化它不是一种选择。

Fozi

1 个答案:

答案 0 :(得分:0)

您可以尝试使用IOCTL_DISK_GET_LENGTH_INFO。但是,此IOCTL已添加到Windows XP和更高版本的操作系统中 http://msdn.microsoft.com/en-us/library/aa365178(VS.85).aspx