Я хочу написать свой собственный инструмент для создания глобальных фрагментов для Windows XP и выше. Это будет всегда запущенный в фоновом режиме инструмент, который будет всплывать на глобально определенной горячей клавише, позволять мне выбирать фрагмент с аргументами подстановки, а затем вставлять расширенный фрагмент в текстовый ввод любого элемента управления, в котором я находился, когда активировал его и, наконец, вернул меня в это предыдущее окно ввода / вывода.
Я знаю, как выполнять большинство алгоритмических аспектов, но я не знаю, как реализовать эти функции на базе Windows:
1 - Глобальная горячая клавиша: как определить последовательность клавиш в окнах (из .net?), Которая будет работать даже при вводе данных в текстовое поле другого приложения? (Обычно это окно браузера)
2 - Вставка в другое приложение: я мог бы использовать буфер вставки и Ctrl-C, но я хочу избежать дополнительных нажатий клавиш.
3 - Вернуть элемент управления в исходное окно: легко вернуться обратно в мой поток ввода: как мне это сделать? На самом деле, как мой инструмент узнает, где я находился до того, как он появился?
Причины, по которым я хочу написать это сам, - это, во-первых, узнать, как (потому что есть другие инструменты, подобные этому, которые я хотел бы создать), и, во-вторых, я не знаю каких-либо инструментов с фрагментами, которые имеют подстановку аргументов, которые я хочу.
Итак, два (2) вопроса: а) каким должен быть мой общий подход? и B) как лучше всего выполнить пункты с 1 по 3 выше?