Вниз
Скачать: CL | DM;

TApplication   Найти похожие ветки 

 
alt7   (2003-05-05 14:34) [0]

Можно ли заменить вызовы ProcessMessages, HandleMessage на что-то делающее тоже самое, но не использует модуль QForms в Kylix или Forms в Delphi?


 
Zelius ©   (2003-05-05 15:42) [1]

Можно, но тогда придется писать либо консольное приложение, либо на WinAPI.


 
alt7   (2003-05-05 15:44) [2]

гы, а я пишу консольное..
Просто сначала писал с GUI, чтоб побыстрее, а теперь, когда работает надо перевести в консольное. Собственно уже перевел вот только сабж... Как сделать?

PS Должно работать как демон в Linux, так что вариант должен быть кросс-платформенным


 
Smithson ©   (2003-05-05 15:50) [3]

Кросплатформенно ты просто так не получишь, поскольку надо будет делать системнозависимые вызовы (для Windows - всякие DispatchMessage и т.д., для Linux - не помню). Сталбыть - условная компиляция или пиши только под Linux.


 
Zelius ©   (2003-05-05 16:03) [4]

если тебе нужна очередь сообщений, то тогда как в WinAPI - GetMessage/DispatchMessage.


 
alt7   (2003-05-05 16:05) [5]

Ситуевина такая, я лично пишу на компе под Вынь.
Человек который это вывешивает на сервере переносит мои исходники на Kylix. Так что меня интересуют оба варианта, во втором я просто передаем ему исходники.

Может кто подсказать?

И вот небольшое пояснение:
Когда писал Application.ProcessMessages то не обрабатывалось почемуто событие от TIdTelnet, перешел на HandleMessage. Но чтобы работа не замедлялась, приходится писать обработчик OnIdle.
И надо чтоб это пахало в Linux без использования XWindow, то есть без модуля QForms


 
Zelius ©   (2003-05-05 17:08) [6]

Хмм... тогда походу тебе надо отказаться от сообщений...


 
alt7   (2003-05-05 17:15) [7]

Не могу отказаться. Тут другая байда. У меня не срабатывало событие OnDataAvailable от TIdTelnet (Indy). Не понятно почему не срабатывало. Я поставил в вечный цикл Application.ProcessMessages -> Не помогло.
Помогло -> Application.HandleMessage да еще OnIdle, бо медленно очень без него (см. хелп по HandleMessage).

Это другой конец палки. Если бы заработал обработчик события то вообще не было бы этого треда. ;((


 
Zelius ©   (2003-05-05 17:37) [8]

Тебе надо полазить по исходникам TidTelnet, разобраться почему не работает, что-нибудь переписать, типа TThread.Synchronize, я только что от туда - там все прозрачно :)



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.01 c
1-59770
KSergey
2003-05-05 11:17
2003.05.19
TAction и кнопка


1-59725
RIPer
2003-05-05 14:47
2003.05.19
HorizontalScrollBar


8-59817
Sterh
2003-02-07 21:25
2003.05.19
MP3


14-59895
NetBreaker666
2003-04-29 15:58
2003.05.19
Отрисовка в отдельном потоке.


3-59619
ligor
2003-04-28 21:25
2003.05.19
FibPlus




   Наверх