views:

154

answers:

1

I am using MsgWaitForMultipleObjectsEx() for my message loop, and Shell_NotifyIcon to create tray icons.

Here's the deal: Whenever the tray icon sends messages to it's owner window, the window won't receive the messages right away, instead they will get queued until any other type of message arrives (WM_MOUSEMOVE, for example).

Seems like the messages from the tray icon won't get MsgWaitForMultipleObjectsEx() out of the wait state for some reason, although I am calling MsgWaitForMultipleObjectsEx() with QS_ALLEVENTS wake mask.

I use WM_USER + ... for NOTIFYICONDATA::uCallbackMessage, and I also tried to use a "concrete" value (WM_MOVE,...) instead. Didn't help.

Did anyone ever faced this problem?

+1  A: 

Haven't you tried with QS_ALLINPUT instead of QS_ALLEVENTS?

Andrey