I use CreateDesktop(), SwitchDesktop, etc to manipulate multiple desktops.

My problem is that hotkeys registered with RegisterHotKey works across multiple desktops. Example, I have two desktops named "Desk 1" and "Desk 2". On Desk 1 I start an application which registers a hotkey say Ctrl+Alt+N. When this hotkey is pressed a new window is created. Now I switch to Desk 2 and press this hotkey. Because the hotkey-program has been started on desk 1, the window will appear on desk 1 no matter which desktop is currently active.

This is quite annoying. Also, I can't start the hotkey-program again on Desk 2 because the Ctrl+Alt+N hotkey has already been registered!

Anyone knows a solution to this problem or is this by design and can't this be circumvented?