Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.04.04;
Скачать: [xml.tar.bz2];




Вниз

ICQ 


Swinger   (2002-03-24 00:26) [0]

Здравствуйте! Я пишу програму на подобии ICQ (но при этом пишу также и свой собственный сервер). И мне стало интересно следующее:
Как в ICQ реализована задержка? :) Объясню: Там каждые 5-10 секунд (если не прав - то скажите как часто) отправляется сообщение на сервер с информацией о том что я всё ещё в сети. Так мне было интересно как они делают эту задержку? Если её делать стандартным TIMER"ом (т.е. чтобы через 5 секунд посылал сообщение на сервер и запускал себя заново), то не будет ли тормозить? И будут ли при этом другие процедуры работать или таймер возьмёт все ресурсы на себя?



Swinger   (2002-03-24 00:31) [1]

Сюда же ещё пару вопросов:
1) Может кто подскажет компонент, которым в ICQ реализован список пользователей? Т.е. чтоб слева был значок (нет сообщения - просто значок, есть сообщение - мигает иконка), а справа текст. Я вначале думал просто о двух столбцах TListBox, но мне этот вариант не очень нравится.
2) И ещё один вопрос (пытался поиском найти на него ответ тут, но не нашёл): Почему при добавлении строки в Memo у меня строчки ывводятся в любо порядке? Т.е. я пишу Memo1.Lines.Add(s)... ожет кто подскажет, как добавлять строчку в низ Мемо? Т.е. чтоб каждое следующее сообщение шло ниже предыдущего?

Заранее благодарен за помощь.



Deus   (2002-03-24 00:33) [2]

Тормозить не будет.
Другие процедуры работать будут.



Deus   (2002-03-24 00:42) [3]

Аська написана на сях. Поэтому вопрос насчёт компонента - некорректен.
Если не изменяет память - на torry.net было что-то похожее.

Memo1.Lines.Add(s) добавляет строку в конец текста. Ты чтото не так делаешь....

P.S. Не обижайся, но я бы посоветовал взяться за что-нибудь попроще сначала. Если, конечно, ты хочешь получить какой-то результат...



Keymaster   (2002-03-24 01:02) [4]

Я сейчас пишу подобныйкомпонент...



Doom   (2002-03-24 01:08) [5]

2 Deus
Насчет попроще сначала - это вы зря. Это цель вполне реальная. Другие делают, а он что хуже?



Donal_Graeme   (2002-03-24 04:26) [6]

так называемый Keep_Alive клиентская ася шлёт примерно раз в две минуты :-) если точнее, то максимальный интервал установлен в 140 секунд.
Плюс ещё если сервер посылает сообщение клиенту, а клиент не отвечает сигналом "получено", то сервер повторяет раз 10 посылку сообщения, после чего решает, что клиент отключился.



Swinger   (2002-03-24 10:23) [7]

2 Deus: Результат, которого я хочу дщобиться - безглючная, маловесящая, альтернатива аськи для внутренней сети (впрочем на сможет и для инета работать, но я не думаю, что я такой великий программер, чтобы написать сервер-прогу, которая бы жрала немного ресурсов пир большом количестве пользователей.. :))

> Memo1.Lines.Add(s) добавляет строку в конец текста. Ты чтото
> не так делаешь....

Это не я делаю что-то не так, а компилятор Д6.. :)

2 Donal_Graeme: Спасибо за информацию о протоколе аси.. просто я тоже начал думать что если отсылать информациюот клиента сереру каждые 5-10 секунда, то даже при 20 онлайн пользователях сервак будет очень сильно подтормаживать.. :)

2 KeyMaster: можно поподробней узнать?



Nikolay M.   (2002-03-25 14:47) [8]

1) На торри была (есть?) компоненточка - отправляет/принимает аськины мессаги, ведет контакт-лист, может принимать всякие статусы (online, away, n/a...). Могу выслать - не жалко (только напиши на мыло). А руками писать аську - упишешься. Пробовали - забили через месяц. Нужен ОЧЕНЬ хороший уровень знаний протоколов, архитектуры сетей и всего, что с этим связано.
А безглючная маленькая аська зовется Miranda :)

2) Memo.Lines.Append не пробовал?




Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.04.04;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.73 MB
Время: 0.02 c
14-9651           Alex-comm             2002-02-19 19:07  2002.04.04  
Вопрос по ГИС (разработка программы)


1-9489            IlyaSh                2002-03-25 12:17  2002.04.04  
печать данных из таблицы TTable


4-9675            Basaev                2002-02-03 17:39  2002.04.04  
Как из своей програмы можно запустить другую программу


1-9558            olookin               2002-03-24 16:47  2002.04.04  
Сеть


1-9528            MaratA                2002-03-23 19:07  2002.04.04  
Delphi виснет через несколько запусков проги