Ответ 1
Посмотрите на статью, упомянутую в комментариях выше.
Я бы предположил, что это 8 (Authenticode), это зависит от того, какие сборки вы ссылаетесь на
Я написал простое приложение .net WPF
(содержит только 2 маленьких окна), но его запуск слишком медленный - около 10-20 секунд!
Профилер говорит:
Main->RunInternal
(56%)Main->RunInternal->ctor->LoadBaml
(32%)Большая часть времени загрузки приложения - это тело функции Main->RunInternal
, это не моя функция, и я не знаю, что они делают. Может ли их время выполнения каким-то образом оптимизироваться?
Загрузка разметки Baml занимает 32% всех времен, но моя программа имеет всего 3 файла XAML и содержит менее 100 строк кода. Почему это действие длится так долго?
Прежде чем спросить, я прочитал и пробовал эти трюки, но они мне не помогли:
Итак, как я могу ускорить время начала моего приложения?
Спасибо.
PS. Я тестировал эту программу на двух подобных компьютерах, и результат был таким же.
Посмотрите на статью, упомянутую в комментариях выше.
Я бы предположил, что это 8 (Authenticode), это зависит от того, какие сборки вы ссылаетесь на
У меня та же проблема. Google с RunInternal ничего мне не дает.
Затем я попытался создать резервную копию моих предыдущих кодов и удалить сборки и файлы, пока не останется только окно.
Затем это сработало - время запуска сократилось с 10 секунд до 1 секунды!На этот раз профайлер показал только System.Windows.Application.Run() вместо RunInternal
Очень странно, что для этого компьютера, даже после повторного импортирования прослушиваемой (медленной) версии, он работал правильно! в то время как мой ноутбук, который не прошел исправление выше, по-прежнему загружает программу на 10+ секунд.