Declare Function GetLogicalDrives Lib "kernel32" () As Long
GetLogicalDrives определяет все установленные логические диски на компьютере. Логические диски обозначаются однобуквенным именем (напр. A: или C:)
Возвращаемое значение является коллекцией однобитных флагов, определяющих найденные диски. Нулевой бит (самый младший) соответствует диску A:, первый бит - диску B:, второй - диску C: и т.д. (Смотри пример)
' Определяем все установленные диски Dim driveflags As Long ' флаги, определяющие диски ' Получаем названия дисков driveflags = GetLogicalDrives() ' Тестируем возвращаемое значение If (driveflags And 1) = 1 Then Debug.Print "Диск A: существует" If (driveflags And 2) = 2 Then Debug.Print "Диск B: существует" If (driveflags And 4) = 4 Then Debug.Print "Диск C: существует" If (driveflags And 8) = 8 Then Debug.Print "Диск D: существует" ' и так далее...