What I get is the fixme.  I presume this is because the Callout was not
present, or did not create it.  I do not understand the Callout mechanism,
or where it is set up.  Do you know?





Ulrich Weigand <[EMAIL PROTECTED]> on 20-01-2001
01:10:29 AM

To:   David Goodenough/DGA/GB
cc:   [EMAIL PROTECTED]
Subject:  Re: Notes and Java test on 20010112.





> The Sun one fails with the GetFastQueue16 error that I mentioned with the
> last drop.  Does anyone know what needs to be done to build a default
> queue.  I put in a suggestion last time but no one reacted to say whether
> it was the right approach.  Also there was the question about how it
should
> be deleted when the thread is cleared.  The Windows SDK file I have does
> not seem to list GetFastQueue16, so I do not know what the rules are.

GetFastQueue16 is an undocumented kernel routine that is used in Win9x
to implement the specification that all threads except the main thread
by default don't have a message queue; when they call the first 'GUI'
routine that requires a message queue, one will be created on the fly.

This is done by having every routine that needs to access the thread's
message queue call GetFastQueue16 to retrieve the queue.  If the queue
is already present, it will be simply returned.  If the thread doesn't
yet own a queue, one will be created.

GetFastQueue16 only gives the warning message if it tried to create a
message queue, but this failed for some reason.  This is a situation
that should never occur, really ...

In fact, the only situation I could understand GetFastQueue16 to fail
would be if the application doesn't load the USER subsystem, so that
the callout from KERNEL will not be present.  Could you provide a
trace with +relay and +loaddll to show whether and when USER is loaded?

Bye,
Ulrich

--
  Dr. Ulrich Weigand
  [EMAIL PROTECTED]





Reply via email to