Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: Как получить список доступных логических дисков? Добавлено: 21.11.09 18:24  

Автор вопроса:  Саня | ICQ: 553816426 
Подскажите пожалуйста, как получить список доступных логических дисков? Без: флопика; CD-приводов или семных носителей.
Заранее благодарен.

Ответить

  Ответы Всего ответов: 3  

Номер ответа: 1
Автор ответа:
 Саня



ICQ: 553816426 

Вопросов: 10
Ответов: 99
 Профиль | | #1 Добавлено: 21.11.09 18:25
Ой забыл, для VB 6.0

Ответить

Номер ответа: 2
Автор ответа:
 Winand



Вопросов: 87
Ответов: 2795
 Web-сайт: winandfx.narod.ru
 Профиль | | #2
Добавлено: 21.11.09 18:35
пожалусто
  1. Option Explicit
  2. Private Declare Function GetLogicalDriveStrings Lib "kernel32" Alias "GetLogicalDriveStringsA" (ByVal nBufferLength As Long, ByVal lpBuffer As String) As Long
  3. Private Declare Function GetDriveType Lib "kernel32.dll" Alias "GetDriveTypeA" (ByVal nDrive As String) As Long
  4. 'Private Const DRIVE_UNKNOWN As Long = 0
  5. 'Private Const DRIVE_NO_ROOT_DIR As Long = 1
  6. Private Const DRIVE_REMOVABLE As Long = 2
  7. 'Private Const DRIVE_FIXED As Long = 3
  8. 'Private Const DRIVE_REMOTE As Long = 4
  9. Private Const DRIVE_CDROM As Long = 5
  10. 'Private Const DRIVE_RAMDISK As Long = 6
  11.  
  12. Private mLetters(25) As String * 3
  13. Private mCount As Long
  14.  
  15. Public Sub GetRemDriveLetters()
  16.     Dim DrivesStr As String 'lpBuffer
  17.     Dim DrivesStrLen As Long 'nBufferLength
  18.     Dim DrivesArr() As String 'ALL Drives Array
  19.     Dim drvType As Long '= GetDriveType
  20.     Dim i As Long
  21.  
  22.     mCount = 0
  23.  
  24.     DrivesStrLen = GetLogicalDriveStrings(0, vbNullString)
  25.     DrivesStr = Space(DrivesStrLen)
  26.     Call GetLogicalDriveStrings(DrivesStrLen, DrivesStr)
  27.     DrivesArr = Split(DrivesStr, vbNullChar)
  28.      
  29.     For i = 0 To UBound(DrivesArr) - 2
  30.         Select Case GetDriveType(DrivesArr(i))
  31.         Case DRIVE_REMOVABLE ', DRIVE_CDROM
  32.             mLetters(mCount) = DrivesArr(i)
  33.             mCount = mCount + 1
  34.         End Select
  35.     Next
  36. End Sub

Логические диски это DRIVE_FIXED

Ответить

Номер ответа: 3
Автор ответа:
 Саня



ICQ: 553816426 

Вопросов: 10
Ответов: 99
 Профиль | | #3 Добавлено: 21.11.09 18:54
ОГРОМНОЕ СПАСИБО какраз то, что нужно!
Работает и в Windows 7 и в XP!

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам