Если вы не добавляете файлы в Zip-файлы через свое приложение, вам придется самостоятельно следить за содержимым или DateLastModified Zip-файлов. Вы можете создать подпрограмму для перебора имен файлов Zip, проверить их содержимое / DateLastModifed и настроить узлы в TreeView. Вы можете вызвать эту подпрограмму на таймере, если содержимое ваших Zip-файлов часто меняется.
Вот пример подхода, в котором используется словарь для отслеживания LastModifiedDate каждого файла:
Dim m_objFileModifiedDates As New Dictionary
Dim m_objFSO As New FileSystemObject
Private Sub Command1_Click()
Dim objFolder As Folder
Dim objFile As File
Dim sModifiedFiles As String
Set objFolder = m_objFSO.GetFolder("C:\temp\")
For Each objFile In objFolder.Files
' Check if it exists in Dictionary
If Not m_objFileModifiedDates.Exists(objFile.Name) Then
' Add File
m_objFileModifiedDates.Add objFile.Name, objFile.DateLastModified
Else
' Check Last Modified Date
If m_objFileModifiedDates.Item(objFile.Name) <> objFile.DateLastModified Then
' Update Dictionary
m_objFileModifiedDates.Item(objFile.Name) = objFile.DateLastModified
sModifiedFiles = sModifiedFiles & objFile.Name & vbCrLf
End If
End If
Next
If sModifiedFiles <> "" Then
' Update TreeView with modifed files
MsgBox "Files modified: " & vbCrLf & sModifiedFiles
End If
End Sub
Когдаэто обнаруживает, что файл был изменен, вы можете обновить TreeView, прочитав содержимое измененного файла снова и обновить этот узел TreeView, или просто обновить все дерево.