Я уже несколько лет использую Indy для передачи файлов по FTP, но не смог найти удовлетворительного решения для следующей проблемы.
Когда пользователь загружает большой файл за маршрутизатором, иногда происходит следующее: файл загружен нормально, но в то же время командный канал отключается из-за истечения времени ожидания. Обычно этого не происходит при прямом подключении к серверу, поскольку сервер «знает», что происходит передача по каналу данных. Некоторые маршрутизаторы не знают об этом, и канал команд закрыт.
Многие программы периодически отправляют команду NOOP, чтобы поддерживать канал команд в активном состоянии, даже если это не является частью стандартной спецификации FTP. Мой вопрос: как мне это сделать? Отправить ли команду NOOP в событии OnWork? Причиняет ли это какой-либо побочный ущерб, например, мне нужно обработать какой-нибудь ответ? Как мне лучше всего решить эту проблему?