Определение свободного дискового пространства - VB
Формулировка задачи:
Помогите решить проблему, ни как не могу подобрать нужных параметров. Есть скрип, который определяет сколько свободного места на диске осталось, при этом для определения диска вызывается:
Сам же скрип целиком выглядит так:
Так вот нужно сделать так чтоб inputbox читал скажем только изначально указанные параметры например строковые с буквами диска и при написании какого либо другого пааметра выводил сообщения типа
и заново повторял бы скрипт. Или же возвращал код ошибки выводил бы сообщение и снова запускал бы скрипт
Пробовал разные циклы - ничего не получалось.
Решение задачи: «Определение свободного дискового пространства»
textual
Листинг программы
Option Explicit
Dim drvPath, s
Do
drvPath = InputBox("Введите букву диска " & vbCrLf & "на котором необходимо узнать свободное место", "Путь к диску", "C")
s = ShowFreeSpace(drvPath)
MsgBox s, vbInformation, "Free Space"
Loop Until InStr(1, s, "Error") = 0
Function ShowFreeSpace(drvPath)
Dim FSO, D, s, bts, fs
On Error Resume Next
Set FSO = CreateObject("Scripting.FileSystemObject")
Set D = FSO.GetDrive(FSO.GetDriveName(drvPath & ":"))
bts = 1048576 '(1024 * 1024)
fs = D.FileSystem
s = "Drive " & UCase(drvPath) & " :\"
s = s & D.VolumeName & vbCrLf & vbCrLf
s = s & "FileSystem: " & fs & vbCrLf
s = s & "Free Space: " & Round(D.FreeSpace / bts, 3) & " Mb"
If fs = "" Then ShowFreeSpace = "Error. Drive """ & UCase(drvPath) & """ unavailable." Else ShowFreeSpace = s
End Function