Требуется ли также 30 секунд для запуска, когда компьютер находится в режиме ожидания (т. Е. Если вы запускаете его двойным щелчком, когда компьютер не загружен при загрузке окон)?
Во время запуска Windows компьютер обычно занят многими вещами, и это может привести к замедлению работы вашего приложения. Тогда мало что можно сделать.
Но некоторые общие советы по улучшению запуска приложения WPF:
- Создайте только те элементы управления, которые вам действительно нужны для первоначального показа пользователю
- Уменьшите сложность ваших элементов управления / окон.
- Не занимайте много времени в конструкторах ваших элементов управления и окон
- Даже такие невинные вещи, как чтение файла с локального диска, могут занимать много времени, если диск занят другими вещами (как обычно это происходит при запуске Windows)
- Вызовы веб-службы могут занять больше времени, если сеть еще не полностью инициализирована
- Простое решение - перенести тяжелую работу на
BackgroundWorker
или использовать асинхронные вызовы для ввода / вывода и сетевых запросов
Существует также параметр, который вы можете ввести в app.config
, который указывает среде выполнения не проверять подлинность сборок с сертификатом (эта проверка может занять много времени, особенно при холодном запуске):
<configuration>
<runtime>
<generatePublisherEvidence enabled="false"/>
</runtime>
</configuration>
Некоторые более общие советы доступны на сайте MSDN по адресу Время запуска приложения .