Предотвращение отключения надстроек

Программы в Office 2013 и более поздних версий обеспечивают устойчивость надстроек, то есть приложения отключают надстройку, если она работает медленно. Однако вы можете повторно включить надстройки и запретить автоматическое отключение надстроек другими Office приложениями.

Предотвращение отключения надстроек

Хотя большинство надстроек не будут отключены функцией отключения надстройки, вы не хотите, чтобы надстройка была отключена согласованно.

Ниже приведены некоторые рекомендации по повышению производительности надстройки.

  • Предпочитать собственные COM-надстройки управляемым надстройки, так как управляемые надстройки должны накладно загружать платформа .NET Framework во время Outlook запуска.

  • Если у вас есть длительные задачи, такие как создание ресурсоемких подключений к базе данных, откладывайте выполнение этих задач после запуска.

  • По возможности кэшируйте данные локально, вместо того чтобы выполнять дорогостоящие сетевые вызовы во время событий FolderSwitch и BeforeFolderSwitch обозревателя или открытия событий элемента.

  • Имейте в виду, что все вызовы Outlook объектной модели выполняются Outlook основном потоке переднего плана. Старайтесь не выполнять длительные вызовы Outlook объектной модели, если это возможно.

  • В Outlook 2013 года вызовы объектной модели Outlook возвращают E_RPC_WRONG_THREAD при вызове объектной модели Outlook из фонового потока.

  • Опрос является ресурсоемкой операцией, поэтому всегда предпочитать модель на основе событий, чем опрос.

Контроль системного администратора над надстройкими

Пользователь может контролировать, какие надстройки выполняются на компьютере. Начиная с Office 2013 года системные администраторы могут настроить расширенный уровень управления для надстроек с помощью групповой политики. Групповая политика всегда переопределяет параметры пользователей, и пользователям запрещается изменять параметры надстроек, настроенных в списке групповых политик управляемых надстроек .

Для Outlook разделы реестра и параметры описаны в следующих таблицах.

Имя Описание
Ключ Office 2013:
HKEY_CURRENT_USER\Software\Policies\Microsoft\Office\15.0\Outlook\Resiliency\AddinList

Office 2016/2019/365:
HKEY_CURRENT_USER\Software\Policies\Microsoft\Office\16.0\Outlook\Resiliency\AddinList
Описание Этот параметр политики позволяет указать список управляемых надстроек, которые всегда включены, всегда отключены (заблокированы) или настраиваются пользователем.

ПРИМЕЧАНИЕ. Здесь термин "управляемый" относится к надстройки, обрабатываемые групповой политикой, и не относится к надстройки, разработанные на управляемых языках программирования.
String ProgID надстройки
Значения Укажите значение следующим образом:
0 = всегда отключено (заблокировано)
1 = всегда включено
2 = настраивается пользователем и не блокируется параметром политики "Блокировать все неуправляемые надстройки", если он включен.

Примечание

  • Используйте редактор реестра на клиентском компьютере, где установлена надстройка, чтобы получить progID для надстройки: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\Outlook\Addins или HKEY_CURRENT_USER\SOFTWARE\Microsoft\Office\Outlook\Addins

  • Если этот параметр политики отключен или не включен, список управляемых надстроек будет удален. Если параметр "Блокировать все неуправляемые надстройки" включен, все надстройки блокируются.

  • Надстройки, отключенные этой политикой, никогда не будут отключены функцией отключения надстроек Outlook, которая отключает надстройки для повышения производительности, устойчивости или надежности.

  • Если пользователь выбирает "Всегда включать эту надстройку", реестр обновляется, чтобы включить сведения о надстройке, которая должна быть исключена из функции автоматического отключения.

Имя Описание
Ключ HKEY_CURRENT_USER\Software\Microsoft\Office\x.0\Outlook\Resiliency\DoNotDisableAddinList
Описание Этот ключ предотвращает отключение указанных надстроек с помощью функции отключения надстроек.
DWORD ProgID надстройки
Значения Шестнадцатеричное значение от 1 до A, указывающее причину первоначального отключения надстройки:
0x00000001 загрузки (LoadBehavior = 3)
0x00000002 нагрузки по запросу (LoadBehavior = 9)
0x00000003 аварийного завершения
0x00000004 обработки события FolderSwitch
0x00000005 Обработка события BeforeFolderSwitch
0x00000006 открыть элемент
0x00000007 итерации
0x00000008 завершения работы
0x00000009, но не отключен, так как надстройка находится в списке разрешений
0x0000000A сбоя, но не отключен, так как пользователь не отключает диалоговое окно

ПРИМЕЧАНИЕ. Заполнитель x.0 представляет версию Office (16.0 = Office 2016/2019/365, 15.0 = Office 2013).

Примечание

Если вы повторно включите надстройку, которая одновременно вызвала проблему с производительностью, пользователи в будущем могут возникнуть проблемы с производительностью в Office, для которой загружается надстройка.

Чтобы заблокировать надстройки, которые не управляются этим параметром политики, необходимо также настроить параметр политики Блокировать все неуправляемые надстройки.

Дополнительные ресурсы

Поддержка и обратная связь

Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.