Этот сайт использует cookies. Продолжение работы с сайтом означает, что Вы согласны!
Объект Drive. Работа с дисками
Объект Drive
позволяет выполнять различные манипуляции с дисками. Создать объект позволяет метод GetDrive(<Имя диска>)
объекта FileSystemObject
. В параметре <Имя диска>
указывается название диска (например, "C"
, "C:"
или "C:\"
) или путь в сетевом окружении. Если указанный диск не найден, то генерируется ошибка. Пример создания объекта:
Dim fso As New FileSystemObject
Dim Диск As Drive
Set Диск = fso.GetDrive("C")
' Работаем с диском
Проверка существования диска
Проверить существование диска с указанным именем позволяет метод DriveExists(<Имя диска>)
объекта FileSystemObject
. В параметре <Имя диска>
указывается название диска (например, "C"
, "C:"
или "C:\"
). Метод возвращает значение True
, если диск существует и False
— в противном случае. Пример:
Dim fso As New FileSystemObject
If fso.DriveExists("C") = True Then
Debug.Print "Существует"
Else
Debug.Print "Нет"
End If
Получение информации о диске
Получить информацию о диске позволяют следующие свойства объекта Drive
:
DriveLetter
— буква диска (например,"C"
);Path
— путь к диску (например,"C:"
);RootFolder
— путь к корневому каталогу (например,"C:\"
);ShareName
— имя сетевого ресурса;VolumeName
— имя тома на диске (чтение и запись);AvailableSpace
— размер доступного пространства на диске;FreeSpace
— размер свободного пространства на диске;TotalSize
— общий размер диска;SerialNumber
— серийный номер диска;FileSystem
— тип файловой системы (например,"NTFS"
);IsReady
— содержит значениеTrue
, если диск готов для использования, иFalse
— в противном случае;DriveType
— тип диска. Содержит значения0
(тип неизвестен),1
(съемный диск),2
(жесткий диск),3
(сетевой диск),4
(CD-ROM) или5
(RAM-диск).
Пример получения информации о диске показан в листинге 13.3.
Листинг 13.3. Получение информации о диске
Dim fso As New FileSystemObject
Dim Диск As Drive
Set Диск = fso.GetDrive("C")
Debug.Print Диск.DriveLetter ' C
Debug.Print Диск.Path ' C:
Debug.Print Диск.RootFolder ' C:\
Debug.Print Диск.AvailableSpace ' 104660189184
Debug.Print Диск.FreeSpace ' 104660189184
Debug.Print Диск.TotalSize ' 160039239680
Debug.Print Диск.IsReady ' True
Debug.Print Диск.FileSystem ' NTFS
Debug.Print Диск.DriveType ' 2
Семейство Drives
Семейство Drives
содержит несколько объектов Drive
. Доступ к объекту в коллекции выполняется с помощью метода Item(<Индекс>)
или с помощью цикла For Each...Next
. Получить количество объектов в коллекции позволяет свойство Count
.
С помощью свойства Drives
объекта FileSystemObject
можно получить ссылку на коллекцию всех дисков. В качестве примера выведем названия всех дисков:
Dim fso As New FileSystemObject, Item
Dim Диски As Drives
Set Диски = fso.Drives
For Each Item In Диски
Debug.Print Item.DriveLetter
Next
Помощь сайту
Yandex-деньги: 410011140483022
ПАО Сбербанк:
Счет: 40817810855006152256
Реквизиты банка:
Наименование: СЕВЕРО-ЗАПАДНЫЙ БАНК ПАО СБЕРБАНК
Корреспондентский счет: 30101810500000000653
БИК: 044030653
КПП: 784243001
ОКПО: 09171401
ОКОНХ: 96130
Скриншот реквизитов