Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Низкоуровневое программирование > Win Api
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.04.2011, 16:09   #1
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию Поиск файлов по маске на FTP

Всем доброго.
Есть задача поудалять на FTP в определенной папке файлы по маске.
Увы FtpDeleteFile маску не поддерживает, посему я попытался применить стандартную схему:
Код:
 
var fs:HINTERNET;_SearchRec:WIN32_FIND_DATAA;
...
fs:=FtpFindFirstFile(hSession,pchar('catalog/*.dbf'),_SearchRec,0,0);
 if (fs<>nil) then begin repeat
   FtpDeleteFile(hSession,pchar('catalog/'+_SearchRec.cFileName));
 until not InternetFindNextFile(fs,@_SearchRec)
 else 
  Покажем текст ошибки
...
Этот пример я с потолка накатал (у меня он длиннее - там проверки на ошибки).
Проблема в том что несмотря на то что FtpFindFirstFile поддерживает маску файла, при пути с маской он сообщает что "Файлов больше нет" (это системная ошибка получаемая через SysErrorMessage(GetLastError))
Однако если четко указать catalog/file.dbf - все находится и удаляется нормально.

Вопрос: Почему функция поиска может не отрабатывать по маске?
В качестве FTP сервера использую бесплатный GuildFTP, может быть этот сервер не поддерживает такие выкрутасы? Тогда какой из бесплатных серверов FTP позволяет искать по маске?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 13.04.2011, 11:52   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

На всякий случай отвечаю на свой вопрос: Предполагается что это виноват FTP сервер, имеющий ограниченный функционал, ибо при работе с другим FTP эта проблема не проявилась.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 13.04.2011, 12:03   #3
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

а может вам просто получать список файлов и самим проверять на соответствие маске?
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Перемещение и удаление файлов по маске. Putin-mode Помощь студентам 0 04.06.2010 15:39
Поиск файлов по маске и их открытие в 1 workbook Toliyn Microsoft Office Excel 1 21.04.2010 04:45
Поиск папки по маске ForzaJuve Общие вопросы Delphi 9 20.06.2009 23:50
Поиск По маске CoreFox Общие вопросы Delphi 11 21.02.2008 21:48