Desktop Switcher -

public static void CreateDesktop()

Control = 0x0002, Shift = 0x0004

[Flags] enum KeyModifiers

: For production, use a robust library like WindowsDesktop (NuGet) or VirtualDesktop by mconnew. 2. Desktop Switcher UI (WinForms Example) public partial class DesktopSwitcherForm : Form desktop switcher

var manager = GetVirtualDesktopManagerInternal(); IObjectArray desktops; manager.GetDesktops(out desktops); uint count = desktops.GetCount(); var ids = new List<Guid>(); for (uint i = 0; i < count; i++) desktops.GetAt(i, typeof(IVirtualDesktop).GUID, out IntPtr pDesktop); var desktop = (IVirtualDesktop)Marshal.GetTypedObjectForIUnknown(pDesktop, typeof(IVirtualDesktop)); desktop.GetId(out Guid id); ids.Add(id); Marshal.Release(pDesktop); return ids; public static void CreateDesktop() Control = 0x0002, Shift

private const int WM_HOTKEY = 0x0312; private Action hotkeyAction; public GlobalHotkey(Action action) uint count = desktops.GetCount()

desktop switcher