powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Отправка файлов на FTP-сервер
22 сообщений из 22, страница 1 из 1
Отправка файлов на FTP-сервер
    #40016177
aidynchik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всем доброго дня!
У меня происходит обмен данными между приложениями разных компьютеров, проще говоря - синхронизация.
На данный момент для обмена используются сервисы DropBox или Гугл/Яндекс Диск.
Но:
1. Для клиента неудобно, лишние движения по скачке и настройке Дропбокса.
2. Многие не знают, что это такое, приходится каждому регистрировать аккаунты и настраивать приложение на компе.
3. Иногда случайно выключают Дропбокс и все - синхронизация встает.

Было решено снять сервер, и закидывать туда файлики на Ftp. Но тут появляются вопросы - как быть с целостностью данных. Как это решается, вдруг во время передачи пропал интернет, файл не передался полностью. Это как-то можно проверить, есть ли какой-то сигнал, что передача завершена.
Буду очень признателен за овтеты.
...
Рейтинг: 0 / 0
Отправка файлов на FTP-сервер
    #40016185
Фотография X11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Перед скачиванием запрашиваешь CRC у FTP-сервера. После скачивания проверяешь.
...
Рейтинг: 0 / 0
Отправка файлов на FTP-сервер
    #40016186
Фотография X11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1. Непонятно, что, каждый раз перед скачиванием это нужно делать?
2. Т.е. многие знают, что такое FTP и умеют арендовать и постоянно оплачивать сервер?
3. Используйте box.com или mega.nz. Нет гарантии, что также и на FTP будет сбоев.

4. Вместо FTP может лучше купить один акк. на mega.nz? И использовать какие-нибудь компоненты работы с облаками. Вроде бы у uniDAC есть такие. В Delphi есть встроенные для Azure и Amazon , 100% что есть и сторонние библиотеки, например, TMS VCL / FMX cloud pack
...
Рейтинг: 0 / 0
Отправка файлов на FTP-сервер
    #40016189
aidynchik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
X11,

1. Нет, это нужно сделать 1 раз, но каждый раз это нужно делать мне.
2. Никто не знает про ФТП, сервер будет наш.

Задача, чтобы клиент просто включил галочку и все у него заработало, без обращения к нам.
...
Рейтинг: 0 / 0
Отправка файлов на FTP-сервер
    #40016190
aidynchik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
X11,

за идею с облаками спасибо
...
Рейтинг: 0 / 0
Отправка файлов на FTP-сервер
    #40016194
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
aidynchikНо тут появляются вопросы - как быть с целостностью данных. Как это решается, вдруг во
время передачи пропал интернет, файл не передался полностью. Это как-то можно проверить,
есть ли какой-то сигнал, что передача завершена.

Нет, никакого сигнала нет. И команды на выдачу CRC у FTP я тоже не припомню.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Отправка файлов на FTP-сервер
    #40016207
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
aidynchik
Для клиента неудобно, лишние движения по скачке и настройке Дропбокса.
Почему бы не использовать API ?


aidynchik
Но тут появляются вопросы - как быть с целостностью данных. Как это решается, вдруг во время передачи пропал интернет, файл не передался полностью. Это как-то можно проверить, есть ли какой-то сигнал, что передача завершена.
Независимо от способа транспортировки файлов, я бы предложил использовать архивы. У них есть встроенный контроль целостности и возможность закрыть содержимое паролем.
...
Рейтинг: 0 / 0
Отправка файлов на FTP-сервер
    #40016211
Vizit0r
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
насколько я помню, успешно залитым на фтп файл считается, когда его размер на фтп = размеру исходного файла.
...
Рейтинг: 0 / 0
Отправка файлов на FTP-сервер
    #40016214
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вообще-то достаточно получить ответ 2хх на команду STOR, но аффтар-то спрашивал об обратном.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Отправка файлов на FTP-сервер
    #40016223
Фотография X11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov
И команды на выдачу CRC у FTP я тоже не припомню.


зависит от ftp- сервера и настроек
я помню, что есть

OverbyteICS/Source/OverbyteIcsFtpCli.pas Xcrc - Get CRC32 hash sum of HostFileName from PosStart to PosEnd to CRCResult,
only supported if ftpFeatXCrc in SupportedExtensions - V2.107

я даже когда-то использовал
Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
                //узнаём CRC удалённого файла
                if FtpClient1.XCrc then
                  begin
                    iCRC := StrToInt('$' + FtpClient1.CrcResult);
                    log('CRC32: '+FtpClient1.CrcResult);
                    //если CRC совпадают, то прекращаем пытаться скачать ещё раз этот файл
                    if iCrc = FileCRC32(FtpClient1.LocalFileName) then
                      begin
                        LOG('...успешно');



Если мне не изменяет память, то я тогда использовать Serv-U FTP server for Windows
...
Рейтинг: 0 / 0
Отправка файлов на FTP-сервер
    #40016243
Фотография defecator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
X11


я даже когда-то использовал
Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
                //узнаём CRC удалённого файла
                if FtpClient1.XCrc then
                  begin
                    iCRC := StrToInt('$' + FtpClient1.CrcResult);
                    log('CRC32: '+FtpClient1.CrcResult);
                    //если CRC совпадают, то прекращаем пытаться скачать ещё раз этот файл
                    if iCrc = FileCRC32(FtpClient1.LocalFileName) then
                      begin
                        LOG('...успешно');



любишь лесенки в коде ?
...
Рейтинг: 0 / 0
Отправка файлов на FTP-сервер
    #40016245
Фотография X11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
defecator,

Этому коду почти 14 лет
сейчас по-другому :)
...
Рейтинг: 0 / 0
Отправка файлов на FTP-сервер
    #40016246
НеофитSQL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
aidynchik
Всем доброго дня!
У меня происходит обмен данными между приложениями разных компьютеров, проще говоря - синхронизация.
На данный момент для обмена используются сервисы DropBox или Гугл/Яндекс Диск.
Но:
1. Для клиента неудобно, лишние движения по скачке и настройке Дропбокса.
2. Многие не знают, что это такое, приходится каждому регистрировать аккаунты и настраивать приложение на компе.
3. Иногда случайно выключают Дропбокс и все - синхронизация встает.

Было решено снять сервер, и закидывать туда файлики на Ftp. Но тут появляются вопросы - как быть с целостностью данных. Как это решается, вдруг во время передачи пропал интернет, файл не передался полностью. Это как-то можно проверить, есть ли какой-то сигнал, что передача завершена.
Буду очень признателен за овтеты.


Дропбокс, GoogleDrive, и все похожие сервисы приложили достаточно усилий, чтобы сделать их удобными для максимального числа людей и конфигураций. В процессе они решили много проблем, которые раздражали пользователей предыдущих технологий, и с некоторыми из которых вам предстоит познакомиться, если вы решите продолжать копать в направлении архаичного FTP.
С некоторыми столкнетесь сразу, некоторые будут проявляться постепенно, по мере обновления сетевых конфигураций и деплойментов.

Пункт (1) покажется пустяковым по сравнения с обходом FTP фильтров провайдеров.
Пункт (2) решается докой на одну страницу. Если проблема решается докой (и коммерческим готовым продуктом), это успех.
Пункт (3) решается конфигурацией или скриптом. Я тоже это причисляю к успеху, по сравнению с написанием кода.

FTP довольно простой и неприхотливый протокол для посылания файлов с клиента на сервер, немного сложнее в их получении.
Хэшей нет, компрессии тоже. Целостность можно обеспечить через ZIP, или другой архивный формат файлов.
Хакается без особых проблем, DOS тоже легко.
Если вы оставляете сервер открытым (без паролей, или с общим паролем), со временем он может превратиться в центр обмена информацией, запрещенной в вашей стране.

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

Я изучал сетевые протоколы пару десятков лет, и имплементировал несколько. FTP - паровая машина с присущими ей недостатками.

Посмотрите в сторону решений основанных на HTTP, предпочтительно готовых.
...
Рейтинг: 0 / 0
Отправка файлов на FTP-сервер
    #40016251
Фотография defecator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
X11
defecator,

Этому коду почти 14 лет
сейчас по-другому :)


ты за 14 лет так и не научился программировать, судя по обилию тем от тебя ?
https://www.sql.ru/forum/actualsearch.aspx?a=X11&ma=0
...
Рейтинг: 0 / 0
Отправка файлов на FTP-сервер
    #40016255
Фотография X11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
aidynchik
3. Иногда случайно выключают Дропбокс и все - синхронизация встает.


Несколько вопросов.

Т.е. вы хотите написать свой дропбокс?
Т.е. вы гарантируете клиенту, что ваш синхронизатор будет надежнее дропбокса?
Интересно, сколько у вас программистов опытных и сколько в команде дропбокса?
Почему буквально все облачные технологии не используют FTP? По крайней мере все, которые знаю я.

(все вопросы риторические)

Я когда-то тоже использовал дропбокс. Я уже не помню, чем меня задолбал этот дропбокс, но потом в итоге я переехал на mega.nz и box.com.
...
Рейтинг: 0 / 0
Отправка файлов на FTP-сервер
    #40016256
Фотография X11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
defecator, та Дельфи для меня больше, как хобби, а не основное средство заработка и пропитания.
...
Рейтинг: 0 / 0
Отправка файлов на FTP-сервер
    #40016402
fraks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
X11

Т.е. вы хотите написать свой дропбокс?
Т.е. вы гарантируете клиенту, что ваш синхронизатор будет надежнее дропбокса?


Не требуется повторять весь функционал доропбокса.
Вы гарантируете клиенту что без вашего ведома не сменится никакая версия чего-бы то ни было.

У нас были проблемы с дропбоксом когда он перестал поддерживать клиента на WinXP. И вот зачем, чисто из-за какого-то обменника, менять ОС на которой все уже давно работает?

Это заграница, в наше время не исключены какие-то санеции, из-за которых может потеряться доступ к дропбоксу и иным буржуйским сервисам.

Использовали и Яндекс.Диск. Тоже забили на это дело, работает не всегда понятно и предсказуемо.

В итоге тачки с которым требуется обмен, подцепляются к офисной сетке с сервером через OpenVPN.
Это решает массу проблем. Все сервисы - наши, подконтрольные, нигде ничего само не поменяет версию и не перестанет быть совместимым. И внутри этой сетке можно ходить чем угодно, в том числе и ftp и даже smb :)
Впрочем, мы и от файлов отказались, лезем по этой сетке сразу в базу.
...
Рейтинг: 0 / 0
Отправка файлов на FTP-сервер
    #40016409
YuRock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
fraks
Впрочем, мы и от файлов отказались, лезем по этой сетке сразу в базу.
Я вообще по своему протоколу своему серверу всякие данные и файлы посылаю :) , а он уже кладёт их в базу.
...
Рейтинг: 0 / 0
Отправка файлов на FTP-сервер
    #40016470
Фотография X11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
fraks
Это заграница, в наше время не исключены какие-то санеции, из-за которых может потеряться доступ к дропбоксу и иным буржуйским сервисам.


так ничего своего, все на буржуйских сервисах работает: языки программирования, технологии, ОС, СУБД, железо и т.д.

Тогда уже нужно что-то кроссплатформенное писать, чтобы под Линуксом работало.
Желательно на Болдженосе протестировать
...
Рейтинг: 0 / 0
Отправка файлов на FTP-сервер
    #40016473
Фотография X11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
fraks
и не перестанет быть совместимым.

Тогда нужно писать программу на Delphi 7/2007 или на Lazarus. Т.к. начиная с какой-то версии (уже не помню) Delphi не гарантирует нормальную работу приложения на Win XP.
...
Рейтинг: 0 / 0
Отправка файлов на FTP-сервер
    #40016717
fraks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
X11
fraks
Это заграница, в наше время не исключены какие-то санеции, из-за которых может потеряться доступ к дропбоксу и иным буржуйским сервисам.


так ничего своего, все на буржуйских сервисах работает: языки программирования, технологии, ОС, СУБД, железо и т.д.


Вы путаете понятие сервис и инструмент.
От закрытия интернета между Россией и прочим миром, у меня в инфраструктуре ничего не пострадает.

Тот же Firebird - это буржуйский или нет? Тем более что сервера установлены не где-то там а на моем железе.

X11
Тогда уже нужно что-то кроссплатформенное писать, чтобы под Линуксом работало.
Тогда нужно писать программу на Delphi 7/2007 или на Lazarus.


Ну, я так и делаю :) моя программа, написанная на D7 нормально работает под Linux через wine.
Новых дельфей, с их активацией через интернет, я использовать не буду, что бы в случе чего не оказаться с тыквой.
...
Рейтинг: 0 / 0
Отправка файлов на FTP-сервер
    #40016718
fraks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
X11
fraks
Это заграница, в наше время не исключены какие-то санеции, из-за которых может потеряться доступ к дропбоксу и иным буржуйским сервисам.


так ничего своего, все на буржуйских сервисах работает: языки программирования, технологии, ОС, СУБД, железо и т.д.

Тогда уже нужно что-то кроссплатформенное писать, чтобы под Линуксом работало.


1С? Эльбрус? Байкал?
...
Рейтинг: 0 / 0
22 сообщений из 22, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Отправка файлов на FTP-сервер
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]