Если вы создаете простую надстройку VSTO2SE «Hello World», предназначенную для Microsoft Office Excel 2003, при холодном запуске требуется 15 секунд. В течение этого времени Excel полностью не отвечает.
Время холодного запуска всегда мало в Excel 2003. Я видел одну тестовую машину, где время запуска мгновенно в Excel 2007, но всем другим моим тестовым машинам требуется 15 секунд для инициализации. (тестовая среда - Windows XP Pro + VSTO2SE Runtime + XP SP3)
Как можно улучшить эту производительность?
Вещи, которые я уже пытался безуспешно:
Отключение проверки CRL (списка отзыва сертификатов) - похоже, это не помогает, плюс я не могу ожидать, что пользователи сделают это.
Используйте NGEN для создания собственных сборок.
а) Кажется, что Office 2003 никогда не использует нативные сборки.
б) Мой тестовый клиент Office 2007, который запускается быстро, даже при сборке IL.
c) Даже если я NGEN все мое дерево зависимостей, все еще существуют зависимости VSTO, которые могут не иметь собственных изображений.
Задержка загрузки надстройки - это обходной путь «стандартного отклика», который я получаю от Microsoft. Дело в том, что моя надстройка запускается из пункта меню - как я могу отложить загрузку надстройки и при этом получить мои меню? Я мог бы использовать надстройку VB6 для рисования меню и переадресации вызовов посредством взаимодействия, но тогда зачем мне вообще писать надстройку VSTO?
Edit - Да, это единственная строка в событии «connection» в надстройке. (на самом деле это окно сообщения). Требуется целых 15 секунд, прежде чем появится окно сообщения. - Дж Дэвис