HOWTO: Determine the Type of Drive Using Win32
ID: Q161300
|
The information in this article applies to:
-
Microsoft Visual Basic Learning, Professional, and Enterprise Editions for Windows, versions 5.0, 6.0
-
Microsoft Visual Basic Standard, Professional, and Enterprise Editions, 32-bit only, for Windows, version 4.0
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 : kbGrpVB
Version :
Platform : WINDOWS
Issue type : kbhowto
|