Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2008.12.28;
Скачать: [xml.tar.bz2];

Вниз

TidTCPClient сколько данных передали?   Найти похожие ветки 

 
Чудак   (2008-11-17 22:22) [0]

передаю файл через TidTCPClient

client:TidTCPClient

передаю так:
client.writestream(stream, true, true, stream.size);

Как мне во время передачи отобразить сколько данный в данный момент передано???

спасибо


 
Eraser ©   (2008-11-18 04:09) [1]

см. события OnWork, OnWorkBegin, OnWorkEnd.


 
Чудак   (2008-11-18 12:38) [2]


> Eraser ©   (18.11.08 04:09) [1]
> см. события OnWork, OnWorkBegin, OnWorkEnd.

Что то в этих событиях ничего не нашел, или опыта искать не хватает
в OnWork есть тока всего отправлено но оно тока псле того как все отправится


 
Сергей М. ©   (2008-11-18 12:53) [3]


> тока псле того как все отправится


"все" - это сколько конкретно ?


 
Чудак   (2008-11-18 12:55) [4]


> "все" - это сколько конкретно ?

файл полностью (т.е. размер потока)


 
Сергей М. ©   (2008-11-18 12:58) [5]

Я тебя не спрашиваю полностью или не полностью, я спрашиваю про конкретный размер файла, на котором ты экспериментировал ..


 
Чудак   (2008-11-18 13:00) [6]

файл: 60 мегабайт
в OnWork после тока как передался и вылез его полный размер тоже 60 мегабайт


 
Сергей М. ©   (2008-11-18 13:10) [7]

Следует создать свой экз-р TIdIOHandler (в нем и обрабатывать OnWork) и  назначить его св-ву IOHandler объекта TIdTCPClient


 
Чудак   (2008-11-18 15:15) [8]


> Следует создать свой экз-р TIdIOHandler (в нем и обрабатывать
> OnWork) и  назначить его св-ву IOHandler объекта TIdTCPClient

Ого, а примерчик можно а то сложновато сразу вьехать


 
Сергей М. ©   (2008-11-18 15:28) [9]

ПРимеры имеются в папке с демо-проектами Инди


 
Чудак   (2008-11-18 16:17) [10]


> ПРимеры имеются в папке с демо-проектами Инди

Я извиняюсь но в примерах такого нету
Ну нету как с клиента отслеживать сколько передалось данных:(((


 
Slym ©   (2008-11-18 16:26) [11]

проще будет написать TFileStreamReadCalc...
наследника от TFileStream и в нем считать, только точность будет в "буферсайз" который в client.writestream используется
можно прокладку наследника от TStream написать который читает из присоединенного TStream подсчитывает и отдает... только теже проблемы с точностью


 
Сергей М. ©   (2008-11-18 16:46) [12]

Ну тогда пользуй TIdConnectionIntercept

Уж к нему-то примеры есть 100%-но


 
Чудак   (2008-11-18 17:17) [13]


> Slym ©   (18.11.08 16:26) [11]
> проще будет написать TFileStreamReadCalc...
> наследника от TFileStream и в нем считать, только точность
> будет в "буферсайз" который в client.writestream используется
> можно прокладку наследника от TStream написать который читает
> из присоединенного TStream подсчитывает и отдает... только
> теже проблемы с точностью

А можно примерчик набрасать упроженный???


 
Сергей М. ©   (2008-11-18 18:58) [14]


> Чудак



> набрасать



> упроженный


Сам-то понял что сказал ?)

Брась упроженная - это в лес к лешим, а не к мастерам делфи)


 
Чудак   (2008-11-18 19:40) [15]

ну ладно глумиться то
Набросать примерчик можно???
А то я совсем запутался


 
Сергей М. ©   (2008-11-18 19:45) [16]


> Чудак   (18.11.08 19:40) [15]


Ты справку-то проштудировал, запутанно-углумленный ты наш убоже ?)

Или так и будешь на паперти попрошайничать да язык родной коверкать ?


 
Чудак   (2008-11-18 20:05) [17]

читал вот выдержка из книги глубины indy
Затем возникает серия событий OnWork. В событие OnWork передаются Sender, WorkMode и текущий WorkCount. Данное событие используется для отображения прогресса.
Как? вразумите неверного его отобразить!!!!!


 
Сергей М. ©   (2008-11-18 20:25) [18]


> читал вот выдержка .. затем возникает серия


Что. вот так прямо прочитал выдержка и сразу возникает ?!

Охх ё ..

Ну а что насчет [12] ?
Что там, в Глубинах, по этому поводу возникает сразу прочитамши ?


 
Чудак   (2008-11-18 20:32) [19]

про TIdConnectionIntercept тама ничерта нет

и зачем грамоздит если как то можно без него читать сколько передалось!
а с TIdConnectionIntercept я ваще повис там чето все замарочено:)


 
Сергей М. ©   (2008-11-18 20:48) [20]

Ох и стыдно же, наверно, быть таким тупым ..


 
Чудак   (2008-11-18 20:57) [21]

исправлюс

если сделать так
procedure TForm1.cliWork(Sender: TObject; AWorkMode: TWorkMode;
 const AWorkCount: Integer);
begin
progressbar.Progress:=AWorkCount;
end;

тут вообщем вроде все пошло
но мне кажется это лажа
иу клиента завешение намного ранше (зависит от размеа файла)происходит чем у сервера почему???
Как скорость то узнать?
таймером читать AWorkCount не получается:(


 
Сергей М. ©   (2008-11-18 21:35) [22]


> все пошло


Не вижу ничего пошлого


 
Чудак   (2008-11-19 00:06) [23]

хотелось бы за место стеба увидеть ответ на вопрос как определить скорость передачи данных


 
Eraser ©   (2008-11-19 03:26) [24]

> [23] Чудак   (19.11.08 00:06)


> хотелось бы за место стеба увидеть ответ на вопрос как определить
> скорость передачи данных

бери производную от количества данных по времени передачи этих данных - будет тебе скорость. эт вроде в школе изучается )


 
Сергей М. ©   (2008-11-19 08:26) [25]


> Чудак   (19.11.08 00:06) [23]


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



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2008.12.28;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.5 MB
Время: 0.005 c
15-1225111586
frgs
2008-10-27 15:46
2008.12.28
Как зоставить сервис не обрываться ?


2-1226840008
Ruzzz
2008-11-16 15:53
2008.12.28
как быстро загрузить в Listview до 500 000 записей?


2-1227004020
Apachi
2008-11-18 13:27
2008.12.28
Создание одной переменной несколько объектов


15-1225449102
Agent[007]
2008-10-31 13:31
2008.12.28
регистрация программ


3-1212217646
Dron2
2008-05-31 11:07
2008.12.28
Сложение текстовых полей в запросе





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский