API автоматизации пользовательского интерфейса Windows - PullRequest
2 голосов
/ 07 февраля 2012

Я пытался понять это некоторое время, поэтому любая помощь будет принята с благодарностью. Я использую UI Automation в моем клиенте, чтобы отслеживать и сообщать о выборе пользователя в другом приложении. Я получил код, отлично работающий на Server 2003. Однако на Server 2008 контроль, который я отслеживаю, отображается как элемент в сетке данных или список. Это очень случайно, и я заметил, что если я продолжу выбирать строки в элементе управления, в конечном итоге элемент управления будет отображаться как сетка данных. На сервере 2003 он всегда указывался как сетка данных, поэтому мой код работает отлично.

Я занимаюсь разработкой в ​​Visual Studio 2010 C #.

Обновление:

Я хотел бы упомянуть, что я получил те же результаты, используя инструмент шпион UI, поэтому в данном конкретном случае исходный код не имеет значения.

1 Ответ

1 голос
/ 13 марта 2012

В зависимости от нескольких аспектов UltraGrid воссоздает свой дескриптор (иногда даже довольно часто) ... это может испортить то, как это воспринимается автоматизацией пользовательского интерфейса ... Я не думаю, что с этим можно что-то сделатьза пределами целевого приложения ...

Дополнительная информация:

Соответствующий элемент управления (Infragistics UltraGrid) НЕ поддерживает Automation Windows / MS UI в соответствии с this .

В настоящее время единственное поддерживаемое решение для автоматизации - это TestAdvantage от того же поставщика .

Хотя они, похоже, работают над добавлением поддержкидля автоматизации пользовательского интерфейса Windows в ближайшие месяцы ...

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