-
Привет всем. Вот возникла такая ситуация: через стандартный компонент TNMFTP реализован клиент для загрузки на сервер (локальный) файлов. Все работает великолепно, пока размер файла в пределах 4 Гб. От 4-х и выше наблюдаются следующие глюки:
1. Перестает работать обработчик PacketSend (в нем ведется расчет всего/отправлено, результат которого отображается на индикаторе, индикатор с начала загрузки встает на максимум и не двигается, хотя закачка идет)
2. Файл закачивается, но с разными ошибками. Иногда не хватает солидного куска, иногда пары байт. Сильно не копал что именно, но вообщем файл приезжает не весь.
Для любых других файлов - клиент работает идеально. То есть, бага только с большими файлами. Глюки были заметны для файлов образов дисков (iso) может быть с этим как то связано? Хотя маленькие ISO пролетают со свистом и без ошибок. Я так понимаю, ошибка связана с тем что винда вообще не любит файлы превыщающие 4 гб, а раньше так вообще их не понимала. Можно ли это как то пофиксить? Может есть исправленная версия этого компонента или использовать что-то из Indy? С сетями работал мало, и не хотелось бы решать проблему методом перебора разных компонентов, тем паче что сервер хоть и локальный, но канал не резиновый и тест одной такой большой закачки - минимум минут 20. Так можно тестить до старости :)
Если кто-то сталкивался или знает как пофиксить, просьба поделится опытом. Код думаю приводит смысла нет: стандартная инициализация FTP и вызов методо Upload.
-
> Real (16.12.2007 04:37:00) [0]
4 гб это 2^32 основание 32 битной системы.
-
У меня 32 битная система, однако файлы образов DVD (4,5 гб) спокойно существуют и могут быть использованы в файловой системе. Почему же я тогда не могу передать их по FTP?
-
> Real (16.12.2007 16:17:02) [2]
Образы не имеют отношения к ФТП Большинство ФТП не могут вылезть за границы 32 бит, а уж клиент тем более.
-
То есть с этим ничего не поделаешь? И тока остается рубить файл на куски? Может есть возможность (или даже готовое решение) для такой задачи, которое я представляю так: файл прозрачно для пользователя рубится пополам, а на приемнике собирается в один... :) FTP-сервер куда идет закачка - линуксовый (кажется Suse 10)
|