Отвечаю сам себе. Сделал через API и получилось. Private Declare Function GetDriveType Lib "kernel32" Alias "GetDriveTypeA" (ByVal nDrive As String) As Long Private Declare Function GetLogicalDriveStrings Lib "kernel32" Alias "GetLogicalDriveStringsA" (ByVal nBufferLength As Long, ByVal lpBuffer As String) As Long Private Sub Form_Load() Dim strSave As String strSave = String(255, Chr$(0)) 'Get all the drives ret& = GetLogicalDriveStrings(255, strSave) 'Extract the drives from the buffer and print them on the form For keer = 1 To 100 If Left$(strSave, InStr(1, strSave, Chr$(0))) = Chr$(0) Then Exit For MsgBox (Left$(strSave, InStr(1, strSave, Chr$(0)) - 1)) Select Case GetDriveType(Left$(strSave, InStr(1, strSave, Chr$(0)) - 1)) Case 2 MsgBox ("Removable") Case 3 MsgBox ("Drive Fixed") Case Is = 4 MsgBox ("Remote") Case Is = 5 MsgBox ("Cd-Rom") Case Is = 6 MsgBox ("Ram disk") Case Else MsgBox ("Unrecognized") End Select strSave = Right$(strSave, Len(strSave) - InStr(1, strSave, Chr$(0))) Next keer End Sub
НО У МЕНЯ ЕСТЬ ЕЩЁ ОДНА ПРОБЛЕМКА! Мне нужно узнать имена всех директорий на диске(допустим поддиректорий нет). Как енто сделать???? Помогите хоть в этом ! Плиииииизь!
Ответить
|