Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft Access Новый топик    Ответить
 Сканирование директории  [new]
I-Moroz
Member

Откуда:
Сообщений: 13
Создается прогармма-регистратор электронных файлов.
Есть головная директория, в ней вручную или иным способом могут добавляться подпапки, а в них файлы.
При запуске программы необходимо просканировать головную директорию и подпапки с целью создания таблицы со списка полного пути и имени файла.

Может кто нить сталкивался с такой проблемой?
Заранее благодарен.
22 авг 06, 11:56    [3036519]     Ответить | Цитировать Сообщить модератору
 Re: Сканирование директории  [new]
Старый ворчун
Member

Откуда:
Сообщений: 1653
I-Moroz
...Может кто нить сталкивался с такой проблемой?

Да нет, какая там проблема? Функция Dir и Help.
Вероятно, можно и через FSO.

зы по уму, создаете классы CFolder и CFile.
В классе CFolder создаете коллекции Folders и Files.
Передаете в класс CFolder стартовый путь и заполняете коллекции с помощью Dir.
22 авг 06, 12:29    [3036797]     Ответить | Цитировать Сообщить модератору
 Re: Сканирование директории  [new]
I-Moroz
Member

Откуда:
Сообщений: 13
Старый ворчун
I-Moroz
...Может кто нить сталкивался с такой проблемой?

Да нет, какая там проблема? Функция Dir и Help.
Вероятно, можно и через FSO.

зы по уму, создаете классы CFolder и CFile.
В классе CFolder создаете коллекции Folders и Files.
Передаете в класс CFolder стартовый путь и заполняете коллекции с помощью Dir.


На сколько я знаю (могу ошибиться) DIR дает список файлов в заданной директории.
Мне нужно получить список самих директорий, а затем в каждой из них запустить цикл по DIR и получить список файлов.
22 авг 06, 12:52    [3036997]     Ответить | Цитировать Сообщить модератору
 Re: Сканирование директории  [new]
bubucha
Member

Откуда:
Сообщений: 5640
автор
На сколько я знаю (могу ошибиться) DIR дает список файлов в заданной директории.
Мне нужно получить список самих директорий, а затем в каждой из них запустить цикл по DIR и получить список файлов.

VbFileAttribute позволит отфильтровать "сами директории"
22 авг 06, 12:55    [3037021]     Ответить | Цитировать Сообщить модератору
 Re: Сканирование директории  [new]
Неопытнiй
Member

Откуда:
Сообщений: 117
по хелпу
SearchFolders Collection
FileSearch Object
22 авг 06, 12:56    [3037025]     Ответить | Цитировать Сообщить модератору
 Re: Сканирование директории  [new]
RVI
Member

Откуда: Москва
Сообщений: 5373
А по моему DIR дает список всего, в том числе и поддиректорий, в
какой-то заданной директории.
22 авг 06, 12:58    [3037038]     Ответить | Цитировать Сообщить модератору
 Re: Сканирование директории  [new]
Старый ворчун
Member

Откуда:
Сообщений: 1653
I-Moroz
На сколько я знаю (могу ошибиться) DIR дает список файлов в заданной директории.

Вы ошиблись.
А Help не открывается?
22 авг 06, 13:09    [3037152]     Ответить | Цитировать Сообщить модератору
 Re: Сканирование директории  [new]
I-Moroz
Member

Откуда:
Сообщений: 13
Старый ворчун
I-Moroz
На сколько я знаю (могу ошибиться) DIR дает список файлов в заданной директории.

Вы ошиблись.
А Help не открывается?


Краснею............
22 авг 06, 13:13    [3037178]     Ответить | Цитировать Сообщить модератору
 Re: Сканирование директории  [new]
I-Moroz
Member

Откуда:
Сообщений: 13
Покраснение убираю.......
С Dir возьни много. воспользовался FileSearch и чуток поправил Хелповский пример.

Может кому нить пригодится для организации электронного документооборота по сети, когда юзеры сбрасывают на сервер свои файлы, папки

Sub Test()
'puth="C:\DataBase\" - глобальная константа
strFileSpec = "*.*"
CustomFindFile (strFileSpec)
End Sub

Public Function CustomFindFile(strFileSpec As String)
    Dim fsoFileSearch   As Object
    Dim varFile         As Variant
    Dim strFileList     As String
        Set fsoFileSearch = Application.FileSearch
        With fsoFileSearch
            .NewSearch
            .LookIn = Puth
            .FileName = strFileSpec
            .SearchSubFolders = True
            If .Execute() > 0 Then
                For Each varFile In .FoundFiles
                    strFileList = varFile ' полный путь и имя файла с учетом вложенных папок
'                    записываем в таблицу и обрабатываем (блок пропущен)
'...
'...
'...
'----------------------------------------------------
                Next varFile
            End If
        End With
End Function
22 авг 06, 17:08    [3039054]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft Access Ответить