CodeItBetter Programming Another VB Programming Blog

How to check which Drive is CD Drive

Posted on January 5, 2009
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
'File/Folder Handling - How to check which Drive is CD Drive

Option Explicit
 
Declare Function GetDriveType Lib "kernel32" Alias "GetDriveTypeA" (ByVal nDrive As String) As Long
Declare Function GetLogicalDriveStrings Lib "kernel32" Alias "GetLogicalDriveStringsA" _
    (ByVal nBufferLength As Long, ByVal lpBuffer As String) As Long
Public Const DRIVE_FIXED = 3
Public Const DRIVE_REMOTE = 4
Public Const DRIVE_CDROM = 5
Public Const DRIVE_RAMDISK = 6
 
'Insert the following code to your form:

Private Sub Main()
    Dim r&, allDrives$, JustOneDrive$, pos%, DriveType&
    Dim CDfound As Integer
    allDrives$ = Space$(64)
    r& = GetLogicalDriveStrings(Len(allDrives$), allDrives$)
    allDrives$ = Left$(allDrives$, r&)
    Do
        pos% = InStr(allDrives$, Chr$(0))
        If pos% Then
            JustOneDrive$ = Left$(allDrives$, pos%)
            allDrives$ = Mid$(allDrives$, pos% + 1, Len(allDrives$))
            DriveType& = GetDriveType(JustOneDrive$)
            If DriveType& = DRIVE_CDROM Then
                CDfound% = True
                Exit Do
            End If
        End If
    Loop Until allDrives$ = "" Or DriveType& = DRIVE_CDROM
    If CDfound% Then
        MsgBox "The CD-ROM drive on your system is drive " & UCase$(JustOneDrive$)
    Else: MsgBox "No CD-ROM drives were detected on your system."
    End If
End Sub
Comments (0) Trackbacks (0)

No comments yet.


Leave a comment


 

No trackbacks yet.