Fastream Technologies wrote: > Yes these are all what I thought for a week time! I call GetMessage, > then check for known/my messages. If none of them, call > dispatchmessage and all works fine except the problem which goes away > if we set the WHG_MAX to 800 instead of 100! Now there is no such > exception thrown--tested with millions of connections.
Ahh, I missed that you use WM_APP + 100, that's a range I would not use for window messages but something in the higher range of WM_USER instead. It's strange anyway that increasing the maximum number of messages made the error went away since that shouldn't change the base number and range. However here is a quick text-search in my component folder VirtualTreeview: WM_CHANGESTATE = WM_APP + 32; VShellTools: WM_NEWINPUT = WM_APP + 111; WM_SHELLNOTIFY = WM_APP + 51; // Change in the Shell occured WM_REMOVEBUTTON = WM_APP + 8; // VirtualShellToolbar WM_CHANGENOTIFY_CUSTOM = WM_APP + 9; WM_UPDATESCROLLBAR = WM_APP + 10; WM_VETBASE = WM_APP + 100 and more.. So be carefull and find the sender!! --- Arno Garrels [TeamICS] http://www.overbyte.be/eng/overbyte/teamics.html > > Francois, will you? > > Best Regards, > > SZ > > ----- Original Message ----- > From: "Arno Garrels" <[EMAIL PROTECTED]> > To: "ICS support mailing" <twsocket@elists.org> > Sent: Monday, February 05, 2007 1:50 PM > Subject: Re: [twsocket] Possible bug and solution in TWndControl > > >>>> This is probably because you post custom messages do you? >>> >>> Yes but they are starting from WM_USER and there are only 4 of them >>> in this thread. According to help, WM_USER starts from 0x0800 and >>> there should be enough room until WM_APP+100. >> >> But there must somebody send messages in that range. >> >> At first check whether you send any message to the hidden component >> window that has not been registered thru a call to >> WndHandler.AllocateMsgHandler(). >> >> Also, you can (should) use your own message pump in a thread, that >> checks the HWND. >> >> if msg.hwnd = 0 then { Thread message } >> begin >> Any message that was posted to this thread goes here. >> In this case you may even PostThreadMessages with message numbers >> in the range of ICS messages. >> end >> else >> Not a thread message, receiver is a window >> >> --- >> Arno Garrels [TeamICS] >> http://www.overbyte.be/eng/overbyte/teamics.html >> >> >> >> >> >> Fastream Technologies wrote: >>> Hello Arno, >>> >>> ----- Original Message ----- >>> From: "Arno Garrels" <[EMAIL PROTECTED]> >>> To: "ICS support mailing" <twsocket@elists.org> >>> Sent: Monday, February 05, 2007 1:24 PM >>> Subject: Re: [twsocket] Possible bug and solution in TWndControl >>> >>> >>>> Fastream Technologies wrote: >>>>> Hello, >>>>> >>>>> When I use the following thread code: >>>>> >>>>> void __fastcall ReverseProxyClientThread::Execute() >>>>> { >>>>> //---- Place thread code here ---- >>>>> FreeOnTerminate = true; >>>>> >>>>> ... >>>>> >>>>> TIcsWndHandler *windowHandler = new TIcsWndHandler(); >>>>> windowHandler->MsgLow = WM_APP + 100; >>>>> >>>>> while(!Terminated) >>>>> messagePump(); >>>>> >>>>> delete windowHandler; >>>>> } >>>>> >>>>> sometimes we get "Test exception" exception. We have up to 32 >>>>> THttpConnection and 32 THttpCli descendents in this thread. When I >>>>> raised WHG_MAX to 800, the exception disappears. Francois, could >>>>> you raise the constant? >>>> >>>> This is probably because you post custom messages do you? >>> >>> Yes but they are starting from WM_USER and there are only 4 of them >>> in this thread. According to help, WM_USER starts from 0x0800 and >>> there should be enough room until WM_APP+100. >>> >>> Best Regards, >>> >>> SZ >> -- >> To unsubscribe or change your settings for TWSocket mailing list >> please goto http://www.elists.org/mailman/listinfo/twsocket >> Visit our website at http://www.overbyte.be -- To unsubscribe or change your settings for TWSocket mailing list please goto http://www.elists.org/mailman/listinfo/twsocket Visit our website at http://www.overbyte.be