Hello John,

Normally this is no problem. I think with dropdown menu open there is no
problem also, because windows is pumping messages when a menu is open.

But depending on your applicaiton you can do the socket thing in a
separate thread. Other possibility is to run the communication in a
NT service and have the user interface (separate application) talk to
the service with eg a named pipe (or another tcp connection).

---
Rgds, Wilfried [TeamICS]
http://www.overbyte.be/eng/overbyte/teamics.html
http://www.mestdagh.biz

Wednesday, June 4, 2008, 00:48, John D Algeo wrote:

> I have observed that Windows does not pass messages to an
> application when certain User Interface functions are active. 
> Examples are an open drop-down menu or a user dragging a window.  This
> can cause ICS functions such as this Socket Open code to fail:

>    { Use while to repeat connects to ensure enough time for reset to end }
>     tTarget := Time + ((FiResetTime / 1000.0) / 86400.0);
>     while not FfConnected and (Time < tTarget) do begin
>       FiLastError := SocketConnect; { Sets FfConnecting }
>       if FiLastError = FX_OK then
>       begin
>         { FfConnecting is cleared by FWSocketSessionConnected, may happen on
>           socket connection timeout }
>         while FfConnecting do
>           Application.ProcessMessages;    { This can be FWSocket.MessagePump; 
> }
>       end; {if FiLastError=FX_OK}
>     end; {while not connected}

> With a drop-down menu open, this will run as for long as
> FiResetTime is set (> 30 seconds) without connecting.

> Is there a way to make Windows continue to pass messages even if a
> drop-down menu or other UI function is active?

> Thanks,
> John

-- 
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be

Reply via email to