Я пытаюсь вычислить доступное дисковое пространство программно в окнах. Для этого мне нужно сначала получить список доступных дисков, а затем проверить, какие из них являются локальными дисками, а затем запросить доступные байты на каждом локальном диске.
Я немного застрял в первой части, где API представляет две функции:
-
GetLogicalDrives
(http://msdn.microsoft.com/en-us/library/aa364972(VS.85).aspx), который дает вам DWORD с установленными битами (бит 0, если присутствует диск A, бит 1 если диск B и т.д.) -
GetLogicalDriveStrings
(http://msdn.microsoft.com/en-us/library/aa364975(VS.85).aspx), который дает вам фактические строки.
Теперь, хотя позже я буду использовать строки, я бы предпочел использовать первый вариант для запросов. Тем не менее, в моей системе DWORD typedef-ed для "unsigned long", который составляет 4 байта, в то время как буквы дисков содержат только A-Z (26 - я думаю - символы). Очевидно, что в их системе можно определить более 26 дисков (хотя вряд ли они это сделают), поэтому мне было интересно, существует ли какое-либо соглашение для этих дисков. Может ли кто-нибудь указать мне на ресурс?
Спасибо.