uint GetCount(); void GetAt(uint index, ref Guid riid, out IntPtr obj);

public class GlobalHotkey : IMessageFilter

void GetId(out Guid guid); void GetName(out string name);

Then in Program.cs :

// Windows 10+ Virtual Desktop API via COM [ComImport] [Guid("aa509086-5ca9-4c25-8f95-589d3c07b48a")] [InterfaceType(ComInterfaceType.InterfaceIsIUnknown)] interface IVirtualDesktopManagerInternal

private List<Button> desktopButtons = new List<Button>(); private Timer refreshTimer; public DesktopSwitcherForm()