Страница 15 из 26

Re: Технология создания плагинов

Добавлено: 23:48, 17.11.2010
~LONSDALE~
Подскажите пожалуйста как через определённый промежуток времени отправить сообщение в чат.Помогите очень нужно.

Re: Технология создания плагинов

Добавлено: 20:15, 18.11.2010
supermet
ZigZagkms писал(а): Формы у меня в проекте нету. Насколько мне известно таймер он посылает сообщение окну WM_TIMER и тогда уже выполняется функция, была бы форма было бы проще посылать сообщения самому со своим идентификатором и выполнять, хотя в этом я тоже могу ошибаться, не долго я с С++ работаю, как раз с тех самых пор когда разработчики отказались от UDP=) Добавлять форму ради таймера не охота, слишком большие затраты.
Можно использовать winapi функции

Код: Выделить всё

UINT_PTR WINAPI SetTimer(__in_opt  HWND hWnd, __in UINT_PTR nIDEvent, __in UINT uElapse, __in_opt TIMERPROC lpTimerFunc);
BOOL WINAPI KillTimer(__in_opt  HWND hWnd, __in  UINT_PTR uIDEvent);

//функция таймера
void OnTimer(HWND hwnd, UINT msg, UINT idtimer, DWORD dwTime)
{
// здесь код функции
}

//пример вызова
UINT timerid=SetTimer(0, 0, 6000, &OnTimer);
KillTimer(0, timerid);
В функции SetTimer первые 2 параметра нужно установить в NULL, тогда она будет работать без формы.

Re: Технология создания плагинов

Добавлено: 18:03, 19.11.2010
Cilvay
Кто хорошо разбирается в многопоточности?
Подскажите пожалуйста как и при каких обстоятельствах использовать Synchronize? (вычитал в гугле :)) Просто раньше второй поток исполнят тупой код, а сейчас начал взаимодействовать с элементами интерфейса и пошли-поехали ошибки, причем сразу и не поймешь откуда ноги то растут..

Вот код в основном потоке:

Код: Выделить всё

form1.Memo2.Lines.Add('['+TimeToStr(Now)+']'+' Плагин успешно запущен на сервере CommFort версии - ' + uVersion);
А во втором:

Код: Выделить всё

 form1.Memo2.Lines.Add('['+TimeToStr(Now)+']'+' Обновляю xml файлы...');
И как вот сделать чтобы никаких ошибок не появлялось?

Re: Технология создания плагинов

Добавлено: 19:39, 19.11.2010
ZigZagkms
Вопрос к разработчикам сервера. Чем грозит использование импортируемых функций в дочерних потоках, и почему?

Re: Технология создания плагинов

Добавлено: 21:26, 19.11.2010
ОреЛ
Скажите, что будет, если виртуальный пользователя забанен, например, на отправку сообщений в канал, а он будет пытаться совершить это действие?

Re: Технология создания плагинов

Добавлено: 21:45, 19.11.2010
@serg@
ОреЛ писал(а):Скажите, что будет, если виртуальный пользователя забанен, например, на отправку сообщений в канал, а он будет пытаться совершить это действие?
Сообщения тупо не будут публиковаться, проверено. Для контроля возможен только периодический запрос списка банов с поиском бота в списке забаненных.

Re: Технология создания плагинов

Добавлено: 21:45, 19.11.2010
$teelR@t
cilvay писал(а):Кто хорошо разбирается в многопоточности?
Подскажите пожалуйста как и при каких обстоятельствах использовать Synchronize? (вычитал в гугле :))
Второй день пытаюсь наладить синхронизацию. За это время узнал несколько фактов:
1. Synchronize НЕ РАБОТАЕТ В DLL.
2. Критические секции работают под виндой, а под wine'ом надо ещё что-то добавлять, чтобы они заработали (так и не нашел как и что добавить надо).
3. Семафоры и мютексы сложновато реализовать. Это уже на самый крайний случай.

Re: Технология создания плагинов

Добавлено: 22:16, 19.11.2010
@serg@
Maxim Mirgorodsky, очень хотелось-бы видеть событие (серверное), информирующее о появлении нового объявления (хотя бы только с его id). И вообще я немного не понял. на клиентской стороне список объявлений храниться где-то в файле или получается при каждом подключении к серверу? Ведь данные всёравно получаются клиентом при появлении нового объявлении, почемубы получение данных плагином (в событии) не совместить с событие получения данных клиентом, без возможности дополнительного запроса со списком/содержанием.

Re: Технология создания плагинов

Добавлено: 23:10, 19.11.2010
@serg@
Есть ещё 1 просьба к разработчикам коммфорта, пожалуйста в файле справки по плагинам введите раздел, содержащий список изменений и дополнений пунктов в справке (желательно фиксировать все версии таковых, и выделять цветом/рамкой изменённые данные).

Re: Технология создания плагинов

Добавлено: 00:46, 20.11.2010
~LONSDALE~
Пацаны,помогите мне с моей проблемой. Пост чуть выше.

Re: Технология создания плагинов

Добавлено: 00:47, 20.11.2010
@serg@
~LONSDALE~ писал(а):Пацаны,помогите мне с моей проблемой. Пост чуть выше.
а в чём собственно проблема?

Re: Технология создания плагинов

Добавлено: 01:10, 20.11.2010
~LONSDALE~
@serg@ писал(а):а в чём собственно проблема?
как через определённый промежуток времени отправить сообщение в чат.Помогите очень нужно.
(Delphi)

Re: Технология создания плагинов

Добавлено: 01:13, 20.11.2010
@serg@
~LONSDALE~ писал(а):как через определённый промежуток времени отправить сообщение в чат.Помогите очень нужно.
(Delphi)
Не зависимо от языка разработки запустить таймер, в обработчики таймера инициализировать событие 50.

Re: Технология создания плагинов

Добавлено: 01:30, 20.11.2010
~LONSDALE~
Просто я рабоют с плагином для сервера.Допустим принемаю сообщения от пользователя,обновлю данные и когда программа обнавила данные нужно послать сообщение. Через таймер пытался обновить,но отправить так и не понял как.
Если не сложно опиши весь код как это работает. Очень буду блогодарен.

Re: Технология создания плагинов

Добавлено: 02:43, 20.11.2010
@serg@
~LONSDALE~ писал(а):Просто я рабоют с плагином для сервера.Допустим принемаю сообщения от пользователя,обновлю данные и когда программа обнавила данные нужно послать сообщение. Через таймер пытался обновить,но отправить так и не понял как.
Если не сложно опиши весь код как это работает. Очень буду блогодарен.
ну как на дельфи реализовать я не могу подсказать, если работаешь с формами, то там есть специальный компонент, если без форм то постов 10 назад был пример как это реализовать на с++, думаю можно легко переписать под твои нужды.