Hi,
Is there a specific reason why unprocessed messages in IsDialogMessage don't get dispatched? Experiments in Windows 2000 show this is not (always) correct. It seems all messages passed on to IsDialogMessage are dispatched and it always returns 1.
IsDialogMessage doesn't call DispatchMessage, but the function called internally by DispatchMessage.
Changing the behaviour to match Windows 2000 fixes at least one problem I noticed in an MFC application (button getting stuck when using the spacebar).
There's not much information in MSDN about this function, so I can't say if IsDialogMessage always behaves like this.
Sander