#39;візуалізація файлу
temp = 4
With DialogSheets ("Visualisation") 'Готуємо до роботи діалог Visualisation
. ListBoxes ("Name"). RemoveAllItems
While Sheets ("Sheet"). Cells (temp; 2) <> "" 'Заповнюємо список наявними в каталозі файлами
. ListBoxes ("Name"). AddItem Text: = Worksheets ("Sheet"). Cells (temp; 2). Value; Index: = temp - 3
temp = temp + 1
Wend
. Show 'показуємо діалог Visualisation
If. ListBoxes ("Name") = 0 Then Exit Sub 'Вибрали чи що-небудь? p> Dim NumberFile As Integer
NumberFile = . ListBoxes ("Name"). ListIndex 'номер за каталогом візуалізіруемого файлу
Sheets ("Sheet"). Cells (NumberFile + 3; 2). ShowDependents 'показуємо лінії, що проходять від осередку каталогу з ім'ям візуалізіруемого файлу до всіх зайнятих їм осередків області файлів
End With
End Sub
Базові події
Const ColorOfPaper = 33 'колір фону області файлів
Const ColorUsedPartOfFAT = 2 'колір зайнятої частини області файлів
Sub AddFile (NewFile As FileID) 'Процедурa додати файл
'Перевірка наявності присутності в достатньому для створення файлу кількості вільного простору
If NewFile.Size> FreeSize Then
temp = MsgBox ("Файл" + NewFile.Name + "не може бути розміщений через брак вільного місця. "; vbExclamation;" Процес створення файлу ")
Exit Sub
End If
count = NewFile.Size 'лічильник вже записаною частини файлу
NewFile.First = NextFreeCellFAT 'завдання точки входу в FAT для даного файлу
Dim PreviousCellFAT As Integer 'Номер останньої модифікували осередку FAT
PreviousCellFAT = NextFreeCellFAT
Call ToFAT (PreviousCellFAT; 0) 'Записали в неї нуль-ознака того, що це останній (поки що) кластер даного файлу
count = count - 8 'як мінімум 8 байт файла вже розміщені
While count> 0 'поки весь файл не розмістився
Call ToFAT (PreviousCellFAT; NextFreeCellFAT) 'в останню модифікувавши комірку FAT вносимо покажчик на наступну вільну комірку
PreviousCellFAT = NextFreeCellFAT
Call ToFAT (PreviousCellFAT; 0) 'Записали в неї нуль-ознака того, що це останній (поки що) кластер даного файлу
count = count - 8 'як мінімум 8 байт файла вже розміщені
Wend
Call AddFileToCatalog (NewFile) 'додали файл в каталог
End Sub
Sub DeleteFile (File As FileID) 'процедура видаляє заданий файл без розмов
Call DeleteCellFromFAT (File.First)
Call DeleteFileFromCatalog (File.Name)
End Sub
Sub Refresh () 'оновлення зображення області файлів
With Sheets ("Sheet")
. Range ("F6: U13"). Interior.ColorIndex = ColorOfPaper 'пофарбували область файлів в колір фону
. Range ("F6: U13"). Value = "" 'очистили всі комі...