On May 26, 2008, at 09:55, Arno Garrels wrote:

> There is a maximum number of user handles, per-process (default 10000),
> and system-wide (AFAIK $FFFF), so this error seems perfectly OK.
> Maybe your application leaks handles? If not, you may want to try to
> increase the maximum number of user handles in the registry here 
> (untested):
> HKLM/Software/Microsoft/Windows 
> NT/CurrentVersion/Windows/USERProcessHandleQuota
> Also move to ICS v6 that shares hidden windows, thus allocates far less
> handles under heavy load.

I saw this problem once.  It turned out that the message queue was not 
being pumped for all handles, and it caused the message queue for the 
process to max out (10,000 messages, I think).

Make sure that in your custom message pump you are addressing all 
threads and all window handles you have created.  In my case, I had the 
message pump of one thread mistakenly reading only messages for a 
specific handle (using a non-zero handle when calling GetMessage() 
function).  I hadn't noticed that the thread was receiving other 
messages and they were accumulating and filling up the queue.

I fixed this by changing the GetMessage() call to receive all thread 
messages, handling the ones I needed to handle, and calling the default 
WndProc for the rest (or something like that -- it's been a while).

        dZ.

-- 
        DZ-Jay [TeamICS]
        http://www.overbyte.be/eng/overbyte/teamics.html

-- 
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