Мы разрабатываем приложение WPF 4.0 для внутреннего использования.
На некоторых клиентах мы испытываем огромные проблемы с производительностью из-за автоматизации пользовательского интерфейса (на этих клиентах установлено программное обеспечение, такое как служебное перо планшета, сенсорный экран и т. д.).
Это известная проблема для WPF 4.0, см., например:
- Проблемы с производительностью WPF из-за автоматизации пользовательского интерфейса
- Проблема с WPF UI Automation
Нам удалось воспроизвести эту проблему на машине с очень ограниченными характеристиками. Открытие окна WPF на этом компьютере требует:
- 00:00:02 - без установленного программного обеспечения для автоматизации пользовательского интерфейса
- 00:01:41 - с установленным ПО для автоматизации пользовательского интерфейса (для этого теста RoboForm)
- 00:00:09 - с установленным программным обеспечением для автоматизации пользовательского интерфейса и применено исправление KB2484841
Как видите, установка исправления KB2484841 является огромным улучшением, но все же не так быстро, как запускается без установленного программного обеспечения для запуска автоматизации пользовательского интерфейса.
Кроме того, у нас нет особого контроля над тем, какое программное обеспечение устанавливать на клиентах, поэтому сложно развернуть это исправление для всех клиентов.
Следовательно, можно ли «отключить» автоматизацию пользовательского интерфейса для всего приложения WPF? Я знаю, что это можно сделать для каждого UserControl, но возможно ли это для приложения в целом?
Я пробовал код, приведенный в этом сообщении, но безуспешно.
Спасибо за уделенное время,
Коэн