Вывести в Listbox сколько занято и сколько свободно памяти на жёстком диске - VB
Формулировка задачи:
ещё и номер его, но главное память
Решение задачи: «Вывести в Listbox сколько занято и сколько свободно памяти на жёстком диске»
textual
Листинг программы
Private Declare Function GetDiskFreeSpaceEx Lib "kernel32" Alias "GetDiskFreeSpaceExA" (ByVal lpRootPathName As String, lpFreeBytesAvailableToCaller As Currency, lpTotalNumberOfBytes As Currency, lpTotalNumberOfFreeBytes As Currency) As Long Private Declare Function StrFormatByteSize64 Lib "SHLWAPI.DLL" Alias "StrFormatByteSize64A" (ByVal dw As Currency, ByVal pszBuf As String, cchBuf As Long) As Long Dim bbfreeUser As Currency Dim bbtotal As Currency Dim bbfree As Currency Private Sub Command1_Click() Call GetDiskFreeSpaceEx("C:", bbfreeUser, bbtotal, bbfree) ' Ёмкость диска (Байт) bbtotal = bbtotal * 10000 ' Свободного места на диске bbfree = bbfree * 10000 ' Свободного места на диске для текущего пользователя bbfreeUser = bbfreeUser * 10000 ' Для более наглядного отображения полученных данных ' (Например: 120 ГБ вместо 128849018880 Байт) ' воспользуемся функцией StrFormatByteSize64 (в FormatByteSize) Print "Ёмкость: " & vbTab & FormatByteSize(bbtotal) Print "Свободно: " & vbTab & FormatByteSize(bbfree) Print "Свободно пользователю: " & vbTab & FormatByteSize(bbfreeUser) End Sub Private Function FormatByteSize(Bytes As Currency) As String Dim strBuff As String * 256 nRet = StrFormatByteSize64(Bytes / 10000, strBuff, 255) FormatByteSize = Left(strBuff, InStr(1, strBuff, Chr$(0)) - 1) End Function
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д