Программный доступ к приложению через его интерфейс - PullRequest
2 голосов
/ 05 января 2010

Ранее я задавал вопрос о параметрах командной строки, чтобы автоматизировал обработку файла в InfoPath . Я, вероятно, получу значок Tumbleweed для этого.

Вместо попытки пакетного решения через командную строку, может кто-нибудь предложить хороший ресурс для разработки решения, которое откроет приложение и затем выполнит действия через пользовательский интерфейс приложения, такие как открытие файла, его печать и закрытие файла

В прошлом я видел, как унаследованное приложение делало это, когда оно открывало Attachmate и выполняло операции ввода-вывода через интерфейс Attachmate, но я никогда не видел код.

Одним из ограничений является то, что процесс будет инициирован из существующего решения .NET (то есть обработка 10000 файлов). Я также не могу положиться на традиционные макросы Office, подобные тем, которые есть в Excel, - InfoPath не поддерживает их.

Ответы [ 3 ]

3 голосов
/ 05 января 2010

Один из вариантов автоматизации приложения на основе графического интерфейса - это использование AutoIT . Это позволит вам создавать сценарии действий, необходимых для выбора интерфейсов меню, работы с диалогами и т. Д.

В зависимости от ваших потребностей, вы можете создать скрипт AutoIT на своем компьютере разработчика, скомпилировать его в стандартный EXE-файл и развернуть его с помощью скомпилированных артефактов проекта .NET. Чтобы передать ему данные, либо ваш сценарий AutoIT принимает параметры командной строки, либо решение .NET записывает в файл все параметры входного файла и читает сценарий AutoIT в файле для его обработки. Исходя из числа, которое у вас есть в вопросе, я бы выбрал вариант записи в файл.

1 голос
/ 05 января 2010

Поскольку вы уже находитесь в .NET, вы можете попробовать новый UI Automation framework. Я еще не пробовал, но он должен работать с WPF и родными приложениями Win32.

В MSDN также есть несколько образцов: Образцы шаблонов управления UI Automation

0 голосов
/ 05 января 2010

В Attachmate есть язык сценариев, API и другие средства, помогающие автоматизировать его. Так что это, возможно, не было типичным приложением.

С другой стороны, продукты Attachmate (IMO) ужасны до крайности, и я сделаю все возможное, чтобы не работать с ними.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...