[newbie] Events Not being Handled Properly

Hi All
I am back again
This time its a nbew problem that might be very easy , but i cant decipher
it , so i need help again.
Well i am writing the Events for communicating between a DLL in an
application and a Device in the kernel mode.

I have created a thread in the DLL which waits for multiple objects , but
the problem is that the thread which i have created is not able to recieve
the events or does not respond to the events which are fired from below.
Though the same can be properly handled and DLL which is running under the
main thread.

I even experimented by creating the Events and the Device Creation inside
the Thread which i instantiate but.this still does not solve my problem ,
but the very hilarious thing is that if i make the wait for multiple objects
to wait for single objects it works !!!. i dont know what and where to
find the resource for solving the problem.
The thread being created i pass the parameter as the Array of Event Handles
, in case of the waitformultipleobjects and for singleobject condition its
Handle of event which is being waited upon.
Now can anyone guide me through this maze.
thanks and regards
shishir
p.s. its bit urgent as i have to complete this thing within next 24 hours.