Страница: 1 |
Вопрос: помогите разобраться с кодом | Добавлено: 06.12.03 20:54 |
Автор вопроса: ![]() |
Нашёл код программы которая показывает содержимое каталога, включая содержимое подкаталогов,но там не соблюдено одно условие If sFileName <> "." And sFileName <> ".." Then ??????? If GetAttr(CurrentPath & sFileName) And vbDirectory Then вопросы: Какое условие должно там стоять Не могли бы вы прокомментировать те строки которые я выделил * Что мне нужно поменять чтобы резульлтаты добовлялись в List1 Option Explicit Sub RecurseTree(CurrentPath As String) Dim nI As Integer, nDirectory As Integer Dim sFileName As String, sDirectoryList() As String CurrentPath = dir1.path sFileName = Dir(CurrentPath) Do While sFileName <> "" Print #1, CurrentPath & sFileName sFileName = Dir Loop * sFileName = Dir(CurrentPath, vbDirectory) Do While sFileName <> "" * If sFileName <> "." And sFileName <> ".." Then * If GetAttr(CurrentPath & sFileName) And vbDirectory Then nDirectory = nDirectory + 1 ReDim Preserve sDirectoryList(nDirectory) sDirectoryList(nDirectory) = CurrentPath & sFileName End If End If * sFileName = Dir * DoEvents Loop For nI = 1 To nDirectory RecurseTree sDirectoryList(nI) & "\" Next nI End Sub |
Ответы | Всего ответов: 1 |
Номер ответа: 1 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() ![]() Хранитель чата ICQ: 137392264 Вопросов: 8 Ответов: 557 |
Web-сайт: Профиль | Цитата | #1 | Добавлено: 06.12.03 21:27 |
Eсли sFileName это "." или "..", то не заходить в тело if, а перейти к следуещему файлу/директории. If sFileName <> "." And sFileName <> ".." Then '1If GetAttr(CurrentPath & sFileName) And vbDirectory Then '2 nDirectory = nDirectory + 1 ReDim Preserve sDirectoryList(nDirectory) sDirectoryList(nDirectory) = CurrentPath & sFileName End If 'закрывает if под нимером 2 End If 'закрывает if под номером 1
|
Страница: 1 |
|