Предыстория: в играх RTS важные здания и юниты часто можно сгруппировать, используя комбинацию Ctrl + (0-9). Это в сочетании с горячими клавишами в игре делает игровую производительность (т.е. APM, EPM) чрезвычайно эффективной.
Как разработчик, я работаю с множеством приложений, каждое из которых имеет независимые горячие клавиши. Хотя Alt-Tab является отличным способом сделать это, помимо 4 или 5 приложений, он становится менее эффективным, чем простое нажатие на нужное приложение со стартовой ленты.
Что я хочу: я хочу иметь возможность динамически назначать горячие клавиши программам и отменять привязку горячих клавиш после закрытия программы. Например, Windows запускается, я назначаю '0' для VS2008 с помощью комбинации клавиш CTRL + 0, которая связывает VS2008 с '0', пока программа активна. Если VS2008 закрыт, горячая клавиша освобождается. Я знаю, как настроить статические горячие клавиши, но я чувствую это как ограничение.
Вопрос: Было бы лучше попытаться реализовать это на уровне ОС (то есть, используя AutoIT или встроенную функциональность Windows 7) ИЛИ программно (то есть vb.Net свернуть свое собственное)?