Имитация пользовательского ввода в стороннем приложении

Не знаю, с чего начать с этого...

Я думаю о создании небольшого приложения для автоматизации ввода повторяющегося текста. Я хотел бы иметь возможность определять фрагменты текста и вставлять их в другие приложения, когда захочу. Как лучше всего подойти к этой проблеме? Я наткнулся на автоматизацию пользовательского интерфейса, а также на SendKeys. Какие-либо предложения?

Я не возражаю, если мне придется «указывать» на элементы управления вводом для приложения (например, как собственный инструмент для создания снимков экрана Mac просит вас щелкнуть окно, которое вы хотите захватить). Например, я мог бы выбрать фрагмент текста в этом приложении, затем щелкнуть поле ввода текста другого моего приложения, и это каким-то образом позволило бы первому приложению получить дескриптор элемента управления вводом, чтобы затем имитировать ввод.

Кроме того, будет ли какой-либо способ программно «отправить» эту форму элементов управления после ее заполнения? У меня опыт работы в веб-дизайне, поэтому разработка нативных приложений для меня в новинку.

Извините, если это расплывчатый вопрос, я просто не уверен, с чего даже начать с этого...


person Dave W.    schedule 07.03.2011    source источник


Ответы (2)


Вы можете попробовать AutoIt.

person si618    schedule 07.03.2011
comment
Красиво, похоже, это именно то, что я искал! - person Dave W.; 08.03.2011

Я успешно использовал функции API CBT «Компьютерное обучение» на C++ для создания самозапускающихся демонстраций, которые вводят сообщения Windows, включая щелчки мышью, текст и т. д.

Вот ссылка, описывающая запись/воспроизведение макроса, которая поможет вам начать работу.

http://www.codeproject.com/KB/applications/winmacro.aspx

Я думаю, что старая функция VB SendKeys использует эти функции воспроизведения журнала CBT.

person hogwell    schedule 07.03.2011