Microsoft KB Archive/161300

= How To Determine the Type of Drive Using Win32 =

Article ID: 161300

Article Last Modified on 7/13/2004

-

APPLIES TO


 * Microsoft Visual Basic 5.0 Learning Edition
 * Microsoft Visual Basic 6.0 Learning Edition
 * Microsoft Visual Basic 5.0 Professional Edition
 * Microsoft Visual Basic 6.0 Professional Edition
 * Microsoft Visual Basic 5.0 Enterprise Edition
 * Microsoft Visual Basic 6.0 Enterprise Edition
 * Microsoft Visual Basic 4.0 Standard Edition
 * Microsoft Visual Basic 4.0 Professional Edition
 * Microsoft Visual Basic 4.0 32-Bit Enterprise Edition

-



This article was previously published under Q161300



SUMMARY
There are many types of drives that Windows can detect and the Win32 API GetDriveType gives the Visual Basic programmer a simple way to differentiate between them. Below is a code sample showing how to use the API.



MORE INFORMATION
 Start a new Standard EXE project. Form1 is added by default. Add a DriveListBox to Form1.  Add the code below to the General Declarations section of Form1: Option Explicit

Private Declare Function GetDriveType Lib "kernel32" Alias _ "GetDriveTypeA" (ByVal sDrive As String) As Long

Private Function DriveType(sDrive As String) As String Dim sDriveName As String Const DRIVE_TYPE_UNDTERMINED = 0 Const DRIVE_ROOT_NOT_EXIST = 1 Const DRIVE_REMOVABLE = 2 Const DRIVE_FIXED = 3 Const DRIVE_REMOTE = 4 Const DRIVE_CDROM = 5 Const DRIVE_RAMDISK = 6 sDriveName = GetDriveType(sDrive & ":\") Select Case sDriveName Case DRIVE_TYPE_UNDTERMINED DriveType = "has not been recognized" Case DRIVE_ROOT_NOT_EXIST DriveType = "specified doesn't exist" Case DRIVE_CDROM DriveType = "is a CD-ROM drive." Case DRIVE_FIXED DriveType = "cannot be removed I.E. Hard Disk" Case DRIVE_RAMDISK DriveType = "is a RAM disk." Case DRIVE_REMOTE DriveType = "is a remote I.E Network drive." Case DRIVE_REMOVABLE DriveType = "can be removed I.E. Floppy Disk." End Select End Function

Private Sub Drive1_Change MsgBox "The Drive Type " & DriveType(Left(Drive1.Drive, 1)) End Sub  Press the F5 key to run the project, and select a drive from the Drive List box. A message box will be displayed showing what type of drive it is.

Additional query words: kbVBp500 kbVBp600 kbVBp kbdsd kbDSupport KBWIN32SDK KBAPI

Keywords: kbhowto KB161300

-

[mailto:TECHNET@MICROSOFT.COM Send feedback to Microsoft]

© Microsoft Corporation. All rights reserved.