Hello Wilfried, That should not be the problem. You can do as many casting as you like in C++. And you cannot directly convert unsigned int (WPARAM is indeed unsigned int) without first converting to void*.
Regards, SZ ----- Original Message ----- From: "Wilfried Mestdagh" <[EMAIL PROTECTED]> To: "ICS support mailing" <[email protected]> Sent: Saturday, February 18, 2006 4:42 PM Subject: Re: [twsocket] Problem with Thread(At/De)tach > Hello SZ, > > 2 type casts, is this legal ? > (TObject*)(void*)msg.wParam > > --- > Rgds, Wilfried [TeamICS] > http://www.overbyte.be/eng/overbyte/teamics.html > http://www.mestdagh.biz > > Saturday, February 18, 2006, 15:23, Fastream Technologies wrote: > >> I found the problem: it is with THTTPConnection descendent creation. Now >> I >> need to replace FWSocketServer->OnSessionAvailable with my function, >> which I >> could but the following code fails: > >> __fastcall THTTPServer::THTTPServer(TApplication *AOwner) : >> THttpServer(AOwner) >> { >> OriginalSessionAvailable = FWSocketServer->OnSessionAvailable; >> SocketServer->OnSessionAvailable = SessionAvailable; >> } >> //--------------------------------------------------------------------------- >> This part above is fine. > >> void __fastcall THTTPServer::SessionAvailable(TObject *Client, WORD >> Error) >> { >> THTTPThread *affinityThread = > serverThread->>httpServerClientThreadManager->getHTTPThread(); > >> httpClientData *data = new httpClientData(); > >> data->server = this; >> data->Error = Error; > >> while(!PostThreadMessage(affinityThread->ThreadID, >> WM_HTTP_CLIENT_THREAD_ATTACH, (WPARAM)Client, (LPARAM)data)) >> ::Sleep(1); >> } >> //--------------------------------------------------------------------------- >> This is also fine. > >> Now the problem is in affinityThread! > >> void __fastcall THTTPThread::processServerThreadMessage(const MSG &msg) >> { >> if(msg.message == WM_HTTP_CLIENT_THREAD_ATTACH) >> { >> httpClientData *data = >> (httpClientData*)(void*)msg.lParam; >> >> data->server->OriginalSessionAvailable((TObject*)(void*)msg.wParam, > (LPARAM)data->>Error); // gives infinite unnamed exceptions here!!!!! >> >> PostMessage(((httpServerClientClass*)(void*)msg.wParam)->Handle, >> WM_UPDATE_CLIENT_AFFINITY, (WPARAM)this, 0); >> delete data; >> } >> else >> DispatchMessage(&msg); >> } >> //--------------------------------------------------------------------------- > >> Any idea? > >> Best Regards, > >> SZ > >> ----- Original Message ----- >> From: "Francois PIETTE" <[EMAIL PROTECTED]> >> To: "ICS support mailing" <[email protected]> >> Sent: Friday, February 17, 2006 8:45 PM >> Subject: Re: [twsocket] Problem with Thread(At/De)tach > > >>> You should create the smalest possible test program which reproduce the >>> problem, preferably using Delphi. >>> -- >>> [EMAIL PROTECTED] >>> http://www.overbyte.be >>> >>> ----- Original Message ----- >>> From: "Fastream Technologies" <[EMAIL PROTECTED]> >>> To: "ICS support mailing" <[email protected]> >>> Sent: Friday, February 17, 2006 6:21 PM >>> Subject: [twsocket] Problem with Thread(At/De)tach >>> >>> >>>> Hello, >>>> >>>> I know I have brought this problem to your attention before but it >>>> persists >>>> and I think I have a clue. The problem has been: >>>> >>>> - MT >>>> - NOFORMS >>>> - Worker thread of http server clients is different than http server >>>> itself >>>> >>>> Now the clue is I recognized that there is window >>>> allocation/deallocation >>>> with every thread at/de-tach! So that could be the very reason why Arno >>>> could find the issue with many twsocket allocations deletions. I am >>>> SURE >>>> this is an ICS problem as the components give "cannot create hidden >>>> window" >>>> and there is no other application running! This happens with two of my >>>> applications. >>>> >>>> Could someone take a look? >>>> >>>> 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 > > > -- > 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
