![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как переслать огромный файл по ТСП/ИП от 100 Мб- 4 Гб. [D6, D7, Win2k, WinXP]
denissoft © (2008-09-17 19:11:00)Как переслать огромный файл по ТСП/ИП от 100 Мб- 4 Гб.
Использую обычный ClientSocket и ServerSocket? Какое ограничение по размеру буфера для Win-сокета?
Городской Шаман (2008-10-02 19:23:00) [1]А вообще самый простой способ только для передачи файлов - поднять TFTP из Indy и пересылать через него.
brother (2008-10-02 04:31:00) [2]вот это может подойдет? http://www.delphisources.ru/pages/sources/internet/2006_year/send_udp.html
Сергей М. (2008-09-30 17:31:00) [3]Эк вас в дебри понесла нелегкая)
А автор поди схлопотал WSAEWOULDBLOCK и его постиг творческий ступор)
Rouse_ (2008-09-30 17:01:00) [4]
> точно-точно лучше передавать в каждом уникальный идентификатор
> открытого файла(выдается на сервере) смещение в файле и
> размер текущего пакета + хешированный размер пакета(а то
> всегда найдется умник, который подключится к твоему серверу
> и отправит туда $FFFFFFFF) + сигнатура + контрольная сумма
зачем усложнять? Достаточно кидать все в BASE64 и границы пакетов обрамлять любым символом не входящим в BASE64-последовательность :)
Eraser (2008-09-30 16:27:00) [5]> [22] Rouse_ © (26.09.08 11:07)
я передаю обычно, чтобы можно было расчитать сколько процентов до завершения осталось.
далее уже по частям порциями передача идет.
то что умник передаст $FFFFFFFF это уже проблемы умника и системы безопасности. тот, кто не имеет доступа до момента, когда передается размер файла не дойдет )
Городской Шаман (2008-09-27 05:19:00) [6]
> Rouse_ © (26.09.08 11:07) [22]
>
>
> > только размер файла лучше передавать в виде int64
>
> Размер файла лучше вообще не передавать, а то всегда найдется
> умник, который подключится к твоему серверу и отправит туда
> $FFFFFFFF
точно-точно лучше передавать в каждом уникальный идентификатор открытого файла(выдается на сервере) смещение в файле и размер текущего пакета + хешированный размер пакета(а то всегда найдется умник, который подключится к твоему серверу и отправит туда $FFFFFFFF) + сигнатура + контрольная сумма
Ну и проверять чтобы размер пакета не был более, скажем 32Кб + таймаут между пакетами в 30-120 сек(если превышение, то разрыв соединения).
Rouse_ (2008-09-26 11:07:00) [7]
> только размер файла лучше передавать в виде int64
Размер файла лучше вообще не передавать, а то всегда найдется умник, который подключится к твоему серверу и отправит туда $FFFFFFFF
Eraser (2008-09-25 16:09:00) [8]> [0] denissoft (17.09.08 19:11)
как тут и писали - точно так же как и 1 КБ.
только размер файла лучше передавать в виде int64
Anatoly Podgoretsky (2008-09-23 14:50:00) [9]Хорошо послал, очено далеко.
Palladin (2008-09-23 13:32:00) [10]Это он вас завуалированно послал )
Сергей М. (2008-09-22 18:59:00) [11]
> denissoft (22.09.08 18:56) [17]
Вы о чем, любезный ?)
denissoft (2008-09-22 18:56:00) [12]Ихнюю ?
Ну да, и мне тоже...
> да господа далеко пойдете...
Сергей М. (2008-09-19 21:59:00) [13]
> Anatoly Podgoretsky © (19.09.08 21:39) [15]
Ихнюю ?
Ну да, и мне тоже
Anatoly Podgoretsky (2008-09-19 21:39:00) [14]> Сергей М. (19.09.2008 19:57:14) [14]
Тебе бухгалтеров жалко, а мне фирму.
Сергей М. (2008-09-19 19:57:00) [15]Бедны-бедные булгактеры)
denissoft (2008-09-19 19:53:00) [16]Налогоплательщика ЮЛ для примера
Сергей М. (2008-09-19 19:51:00) [17]
> в SendStream можно загрузить файл в 2 Гб?
Нельзя.
Это же не контейнер, чтобы в него "грузить" что-то там)
А где ты видел дистр-в "Налогоплательщика ЮЛ" размером 2 гб ?)
Сергей М. (2008-09-19 19:47:00) [18]
> idw411.1
Мало того что дерьмовый софт пересылается, да еще и дерьмовым софтом дерьмовый софт пересылается)
denissoft (2008-09-19 19:45:00) [19]в SendStream можно загрузить файл в 2 Гб?
Сергей М. (2008-09-19 19:42:00) [20]1. Использовать SendStream
2. Использовать OnWrite.
В любом случае - читать документацию и не нести отсебячину.