Private Declare Function GetLogicalDriveStrings Lib "kernel32" Alias "GetLogicalDriveStringsA" (ByVal nBufferLength As Long, ByVal lpBuffer As String) As Long Private Declare Function GetDriveType Lib "kernel32" Alias " GetDriveTypeA" (ByVal nDrive As String ) As Long Private Sub Form_Click() Dim iscd As Boolean Dim StrDrive As String '盘符串(A: \ C:\ D:\...) Dim DriveID As String '盘符(如:A: \) iscd = False StrDrive = String(100, Chr$(0)) ' 初始化盘符串 Call GetLogicalDriveStrings(100, StrDrive) '返回盘符串 Dim i As Integer '返回光盘盘符到数组 For i = 1 To 100 Step 4 '注意这 里是4 DriveID = Mid(StrDrive, i, 3) '枚举 符 If GetDriveType(DriveID) = 2 Then s = Mid(StrDrive, i, 3) msgbox "可移动盘的盘符为 " & s exit for end if If DriveID = Chr$(0) & Chr(0) & Chr(0) Then Exit For '没有盘符,即时 退出循环 Next i End Sub |
|