Hur man gör en disklås (3 / 5 steg)
Steg 3: Att göra driva låsa (del 2)
Nästa visas jag på menyn var du välja häxa enhet du vill att låsa (bild 1).
Ange colDrives = objFSO.Drives
För varje objDrive i colDrives
strDriveList = strDriveList & objDrive.DriveLetter & Space(10)
Nästa
strDrives = LCase (ersätta (strDriveList,"","", 1, -1))
Ange colDrives = objFSO.Drives
strDriveList = ""
För varje objDrive i colDrives
strDriveList = strDriveList & objDrive.DriveLetter & ": \" & Space(5)
Nästa
InputMenu()
Sub InputMenu
strChoice = InputBox ("Ange bokstaven för den enhet du vill att lås." & _
"Eller skriv ALL om du vill låsa alla enheter." & _
vbCrLf & vbcrlf & "Tillgängliga enheter" & Space(3) & _
":" & vbCrLf & vbCrLf & strDriveList, cTitleBarMsg)
Den första biten av kod genererar en lista över alla tillgängliga enheter. Nästa del är inputbox var du anger bokstaven för den enhet som du vill låsa.
Om du försöker att skriva i något men en giltig enhetsbokstav, och programmet kommer att vägra det. Här är hur jag gjorde det:
Om IsEmpty(strChoice) sedan
DisplaySplashScreen()
ElseIf strChoice = "" sedan
MsgBox "lämna inte denna tom.", 16, cTitleBarMsg
InputMenu()
ElseIf LCase(strChoice) = "alla" då
"Gör ingenting
ElseIf Len(strChoice) <> 1 sedan
MsgBox "Du måste ange bokstaven bara.", 16, cTitleBarMsg
InputMenu()
ElseIf inte InStr(1,strDrives,LCase(strChoice),1) <> 0 sedan
MsgBox "Ogiltigt val, vänligen försök igen.", 16, cTitleBarMsg
InputMenu()
Slut om
De två första raderna kontrollera om användaren trycker på Avbryt-knappen, och om de gjorde programmet avslutas.
De kommande tre linjer kontroller för att se om användaren tomt inleveransområdet.
Resten av koden är ganska förvirrande, men det är i princip bara att se till att användaren har skrivit i en giltig enhet.