Функция GetLogicalDriveStrings

Declare Function GetLogicalDriveStrings Lib "kernel32.dll" Alias "GetLogicalDriveStringsA" (ByVal nBufferLength As Long, ByVal lpBuffer As String) As Long

Платформа: Win 95/98, Win NT

GetLogicalDriveStrings определяет имеющие силу логические диски на компьютере и размещает их названия корневых каталогов в строку lpBuffer. Каждое имя корневого каталога в буфере отделено нулевым символом, и полными строковыми концами в двух нулевых символах. Например, если существуют только A: и C: , строка будет " a: \ (пустой указатель) c: \ (пустой указатель) (пустой указатель) ", где (пустой указатель) представляет нулевой символ. Функция возвращает 0, если произошла ошибка, или длина строки, помещенной в lpBuffer, если функция выполнена успешно.

nBufferLength
Длина строки в буфере lpBuffer.
lpBufferСтрока,которая получает имена всех логических дисков.

Пример:

' Перечисляем имена всех корневых каталогов. Так как каждый вход в строке берет
' Четыре символа (три для имени и один для пустого указателя), мы можем  рассчитать длину
'  строки. Это освобождает нас от проблем относительно пустых указателей.
Dim drivenames As String  ' получаем имена дисков
Dim thisdrive As String  ' буфер для имени диска
Dim c As Long  ' счетчик
Dim slength As Long  ' длина возвращаемой строки

' Создаем место в буфере для имен дисков.
drivenames = Space(255)  ' должно хватить
' Получаем имена всех дисков.
slength = GetLogicalDriveStrings(255, drivenames)  
' считаем по 4 символа для извлечения имен каждого диска.
For c = 1 To slength Step 4  ' 
  thisdrive = Mid(drivenames, c, 3)  ' извлекаем 3-х символьную строку X:\ (где X-буква диска)
  Debug.Print thisdrive  ' показываем имена дисков
Next c

Схожие функции: GetLogicalDrives
Категория Файлы
В начало.

Глонасс мониторинг транспорта
Оборудование Глонасс - установка, обслуживание
glonassnn.com