Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C++ Builder > FTPClient, FTPServer от FPiette


Автор: RootMaster 14.6.2008, 04:37
Доброго времени суток, форумчане! smile

Вопрос такой незатейливый, кто-нибудь работал с данными компонентами в BCB 6.0?
Основные задачи в ТЗ отражают следующие требования по реализации :
1. обеспечивать работу клиента в оболочке CMD удаленной машины
2. дополнительные команды на upload / download файла(ов), папок (как с указанием полного пути, так и без него, с учетом текущей директории)
3. шифрование трафика между клиентом и сервером

Всё это упирается в общем счёте на создание фтп-клиента и фтп-сервера. Поддержка SSL возможности между клиентской и серверной частью реализована в последней версии от FPiette. Примеры по работе с серверной частью есть на Delphi, да и не особо оно труда составляет, чтобы даже самому разобраться, а вот клиентская часть как ни странно отсутствует, как бы я не пробывал искать.
Основные функции для работы с cli отражены в исходниках :
  Pwd        - Get current working directory
  Cwd        - Change Working Directory
  CDup       - Change to parent directory
  TypeSet    - Set type for file transfert (see Binary property)
  TypeBinary - Set to binary type transfert and call TypeSet
  TypeAscii  - Set to ascii type transfert and call TypeSet

  Put        - Upload a file
  Transmit   - Connect, Cwd, Upload a file & Quit

  Append     - Upload a file, appending to existing
  AppendFile - Connect, Cwd, Append a file & Quit

  Get        - Download a file
  Receive    - Connect, Cwd, Download a file & Quit

  RestGet    - Download a file, restarting from current local file size
  RestartGet - Connect, Cwd, Restart downloading a file & Quit

  RestPut    - Upload a file, restarting from ResumeAt property value
  RestartPut - Connect, Cwd, Restart uploading a file & Quit

  Dir        - Download a directory listing to a file
  Directory  - Connect, Cwd, Download a directory listing to a file & Quit

Ну, допустим, взяли мы функцию Dir, подали запрос на получение листа директории с файлами : FTPClient->Dir(); и куда результат попал? Ни переменной для хранения не нашёл, ни функции, которая вернула результат бы в TStringList хотя бы..
Так полистал в списке доступных функций у компонента ещё.. нашёл DirResult типа AnsiString, прогнал по отладчику, никаких строк не возвращается. Пытался отлавливать на события у компонента OnRequestDone, OnDisplay(здесь кажется, идёт обмен посылками команд между клиентом и сервером), OnDisplayFile(эт вообще хз).. В общем, тупик.
И upload, download не работает, пишет ошибку не возможно создать файл, а если и создаёт, то на диске результат никоим образом не отображается.

В общем, HELP! Если кто-то работал с данными компонентами, прошу отписаться. FPiette у него, говорят, компоненты самые устойчивые по работе с сетью. Поэтому и выбор остановился именно на них. 

Или если есть подобные аналоги с примерами, тоже был бы признателен, если бы кто-нибудь поделился.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)