![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
idFTP и большие файлы
yuriks © (2006-10-25 12:14:00)Для закачки файла с FTP сервера использую idFTP.
Для отображения хода выполнения закачки использую OnWork
procedure TForm1.FTPWork(ASender: TObject; AWorkMode: TWorkMode;
AWorkCount: Integer);
количество считанных байт - AWorkCount
но оно Integer а не Int64
то-есть не подходит для больших файлов (> 2Gb)
Как решить проблемку ?
yuriks (2006-10-25 15:02:00) [21]не понял?
Сергей М. (2006-10-25 14:57:00) [22]
> yuriks (25.10.06 14:55) [17]
Ерунду ты сейчас сморозил)
yuriks (2006-10-25 14:55:00) [23]Но почему же не будет ?!
Например iso-шка DVD диска.
Сергей М. (2006-10-25 14:45:00) [24]Не смотря на [15] смею утверждать. что ни один "нормальный" FTP-клиент не будет запрашивать к передаче "за один прием" такой большой объем данных.
Сергей М. (2006-10-25 14:02:00) [25]Концептуально действительно не важно.
Но у меня нет под рукой исх-ков 10-ки.
yuriks (2006-10-25 13:53:00) [26]10
но я думаю это не важно
Сергей М. (2006-10-25 13:48:00) [27]Так.
Во избежание недоразумений давай определимся: я веду речь о 9-ке, а ты ?
yuriks (2006-10-25 13:42:00) [28]значение FTP.IOHandler.RecvBufferSize = 32768
оно не меняется
а AWorkCount растет постоянно на это значение!
Сергей М. (2006-10-25 13:27:00) [29]И чему при этом равно значение св-ва TIdTCPConnection.RecvBufferSize ?
yuriks (2006-10-25 13:25:00) [30]на его значения смотрел + выводил значения на форму
Сергей М. (2006-10-25 13:20:00) [31]А... ну да, понял... Корявая справка к Indy9 не упоминает событие OnWork в кач-ве опубликованных.
Ну тады поясни, откуда ты взял, что "суммарный" ?
yuriks (2006-10-25 13:01:00) [32]Просто выбрал в Object Inspector - Events - OnWork
Сергей М. (2006-10-25 12:55:00) [33]
> yuriks (25.10.06 12:52) [6]
он-то наследуемый)
А вот тыкак умудрился назначить этому защищенномусв-ву-событию свой обработчик ? Ты же не наследовал TIdFTP, судя по приведенному коду ...
yuriks (2006-10-25 12:52:00) [34]Он в нем наследуемый
TIdTCPConnection.OnWork Event
Сергей М. (2006-10-25 12:49:00) [35]
> yuriks (25.10.06 12:48) [4]
Ответь на вопрос в [3] ..
yuriks (2006-10-25 12:48:00) [36]
> Сергей М.
> AWorkCount - это же не тотальный размер файла, а размер
> данных, участвовавших в текущей итерации чтения/записи данных
только не "в текущей итерации " а в текущей "сесии"
то-есть сумарный !
Когда он переваливает за 2Gb лезут отрицательные числа !
Сергей М. (2006-10-25 12:48:00) [37]
> yuriks (25.10.06 12:14)
IdFTP не имеет опубликованного свойства-события OnWork.
?
Сергей М. (2006-10-25 12:25:00) [38]
> Dmitrij_K (25.10.06 12:17) [1]
Это еще зачем ?)
AWorkCount - это же не тотальный размер файла, а размер данных, участвовавших в текущей итерациичтения/записи данных
Dmitrij_K (2006-10-25 12:17:00) [39]переписать модуль