![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Участник клуба Подтвердите свой е-майл
Регистрация: 26.01.2008
Сообщений: 1,899
|
![]()
По определённому условию моя программа отсылает автоматическое сообщение. Отсылает его каждый раз, когда мне приходит новое сообщение. Из-за такой мнгновенной отправки можно получить бан.
Реализация: Во что-то записывать ник пользователя, отправившего мне сообщения и получить время (GetTickCount), когда было принято сообщение. Далее пробегаемся по этому чему-то в поисках ника пользователя, который отправил сообщение, если такой найден, то получаем время последней отправки, которое находится в чём-то и получаем новое время (GetTickCount). Далее из новополученного времени вычитаем время, которое находится в чём-то и если полученное время >= 5000, то отправляем автоответ этому пользователю снова. Возможно, объяснил реализацию криво. |
![]() |
![]() |
![]() |
#2 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
![]()
Как вариант - записывать ник и время сообщений в динамический массив, таймер скажем раз в 5 секунд проверяет элементы массива и при необходимости отправляется ответ с удалением элемента. Обработку таймером массива пооптимальней сделать.
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
![]() |
![]() |
![]() |
#3 |
Участник клуба Подтвердите свой е-майл
Регистрация: 26.01.2008
Сообщений: 1,899
|
![]()
Моя реализация
Код:
2. Что делать с массивом при завершении работы программы или он сам безопасно уничтожится? |
![]() |
![]() |
![]() |
#4 | |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
![]() Цитата:
и вообще, если Вы не выделяете сами память, то и освобождать её не Вы должны. В данном случае нет поводов для беспокойства |
|
![]() |
![]() |
![]() |
#5 | |
personality
Старожил
Регистрация: 28.04.2009
Сообщений: 2,899
|
![]()
Он был бы обычным, если бы TUserList = record, а не TUserList = object.
Я, конечно, понимаю, что старым объектным типом можно пользоваться как записями, но для данной реализации, думаю, резоннее использовать просто record. Таки , Object types +F1 = Цитата:
Будь моя воля , кстати, я бы всё обернул в Tlist. Последний раз редактировалось phomm; 14.02.2012 в 17:14. |
|
![]() |
![]() |
![]() |
#6 |
Пользователь
Регистрация: 26.05.2010
Сообщений: 78
|
![]()
не проще было бы сделать какой нибудь глобальный стринглист и в него добавлять сообщения автоответчика, и чтобы таймер каждые 5сек отправлял первое в списке сообщение и удалял его?
|
![]() |
![]() |
![]() |
#7 |
Участник клуба Подтвердите свой е-майл
Регистрация: 26.01.2008
Сообщений: 1,899
|
![]()
Сообщение для всех одинаковое. Нужно было записывать ID пользователя и время, что собственно уже и сделал.
Object заменил на Record |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Автоответчик под WM | Mclaren | Помощь студентам | 0 | 18.05.2010 02:08 |
автоответчик WM | Mclaren | Помощь студентам | 2 | 05.05.2010 10:09 |