Try something like this:
Code:
Option Explicit
Private Declare Function GetLogicalDriveStrings Lib "kernel32" Alias "GetLogicalDriveStringsA" (ByVal nBufferLength As Long, ByVal lpBuffer As String) As Long
Private Sub Form_Load()
Dim lngRet As Long
Dim strBuffer As String
Dim intPost As Integer
Dim strDrive As String
strBuffer = Space(255)
lngRet = GetLogicalDriveStrings(Len(strBuffer), strBuffer)
intPost = InStr(strBuffer, vbNullChar)
strDrive = Left(strBuffer, intPost - 1)
List1.AddItem strDrive
Do Until intPost = 0
strDrive = Mid(strBuffer, intPost + 1, 3)
List1.AddItem strDrive
intPost = InStr(intPost + 1, strBuffer, vbNullChar)
Loop
End Sub