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

message+ Tthread   Найти похожие ветки 

 
redlord   (2006-02-27 20:50) [0]

всем привет народ подскажите как выйти из ситуации ?

был написан сервер работающий на winsock
не блокированный, использует message windows для отслеживания событий

private // это обьявление стоит в нити
procedure WMSocketEvent(var Msg:TMessage);message WM_SocketEvent;
...
end;
...
// запуск слушающего сокета
WSAAsyncSelect(ServSock,Handle,
                 WM_SocketEvent,FD_Read or FD_Accept or FD_Close)
...

все нормално работало пока
я не перенес его в отдельный поток
после чего до моего обработчика перестали доходить события
здес явно чтото не то с hendel окна которому события посылаются
тобиш пока проседура WMSocketEvent принадлежит Tform все работает стоит ее перенести в поток  ....  полный облом


 
Ihor Osov'yak ©   (2006-02-28 00:09) [1]

Мало инфо для внятного ответа...
Посему пару наводящих вопросов..
1. Есть ли цыкл выборки сообщений в потоке?
2. Если ответ на первый вопрос - да, то как учитывается то обстоятельство, что конструкция procedure ... ;message  ... в некоторой мере "compile magic"?
3. а собственно какой хендл используется для отсылки сообщений?


 
Сергей М. ©   (2006-02-28 08:36) [2]


> redlord   (27.02.06 20:50)  


Нить должна создать окно и иметь цикл ожидания/выборки/диспетчеризации/обработки сообщений.


 
redlord   (2006-02-28 17:57) [3]

для отсылки сообщений используетса хендел нити (то что ето не правилно я уже понял :-)  )

до етого случая я ни когда не занимался мессагами и их отловом .
народ посоветуйте толковую  статью ( на русском языке) для самостоятельного изучения


 
redlord   (2006-02-28 17:58) [4]

для отсылки сообщений используетса хендел нити (то что ето не правилно я уже понял :-)  )

до етого случая я ни когда не занимался мессагами и их отловом .
народ посоветуйте толковую  статью ( на русском языке) для самостоятельного изучения



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

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



Память: 0.46 MB
Время: 0.025 c
15-1141029035
syte_ser78
2006-02-27 11:30
2006.03.19
Как стать провайдером?


2-1141154113
opopo
2006-02-28 22:15
2006.03.19
Get Var By Name, получение переменной по имени.


1-1139251826
Kolan
2006-02-06 21:50
2006.03.19
Как усыпить поток.


8-1129184506
kyn66
2005-10-13 10:21
2006.03.19
Где найти ?


2-1141105639
I am
2006-02-28 08:47
2006.03.19
ID материнской платы




   Наверх