Записи реестра для надстроек VSTO

При развертывании надстроек VSTO, созданных с помощью Visual Studio, необходимо создать определенный набор записей реестра. Эти записи реестра предоставляют сведения, позволяющие приложению Microsoft Office обнаружить и загрузить надстройку VSTO.

Область применения. Сведения в этом разделе относятся к проектам надстроек VSTO. Дополнительные сведения см. в разделе "Функции", доступные по Приложение Office ликации и типу проекта.

Примечание.

Заинтересованы в разработке решений, которые расширяют возможности Office на нескольких платформах? Ознакомьтесь с новой моделью надстроек Office. Надстройки Office имеют небольшое пространство по сравнению с надстройками и решениями VSTO, и вы можете создавать их практически с помощью любой технологии веб-программирования, таких как HTML5, JavaScript, CSS3 и XML.

При сборке проекта Visual Studio создает эти записи реестра на компьютере разработки. Это позволяет легко запускать и отлаживать надстройку VSTO. С помощью ClickOnce для развертывания надстройки VSTO записи реестра автоматически создаются на компьютере конечного пользователя.

Дополнительные сведения о развертывании решения VSTO с помощью установщика Windows см. в статье "Развертывание решения VSTO с помощью установщика Windows".

Дополнительные сведения об использовании записей реестра для надстроек VSTO во время процесса загрузки см. в разделе Architecture of VSTO Add-ins.

Примечание.

В этом разделе текстовый идентификатор надстройки представляет собой уникальный идентификатор надстройки VSTO. По умолчанию идентификатором является имя сборки надстройки VSTO.

Регистрация надстроек VSTO для текущего пользователя и всех пользователей

После установки надстройку VSTO можно зарегистрировать одним из двух способов.

  • Только для текущего пользователя (надстройка VSTO доступна только пользователю, вошедшего на компьютер при установке надстройки). В этом случае записи реестра создаются в HKEY_CURRENT_USER.

  • Для всех пользователей (то есть любой пользователь, который входит на компьютер, может использовать надстройку VSTO). В этом случае записи реестра создаются в HKEY_LOCAL_MACHINE.

    Все надстройки VSTO, созданные с помощью Visual Studio, могут быть зарегистрированы для текущего пользователя. Однако для всех пользователей надстройки VSTO можно зарегистрировать только в определенных сценариях. Эти сценарии зависят от версии Microsoft Office на компьютере и способа развертывания надстройки VSTO.

Тип развертывания

Надстройки VSTO, развернутые с использованием ClickOnce, можно зарегистрировать только для текущего пользователя. Это связано с тем, что ClickOnce поддерживает только создание ключей в HKEY_CURRENT_USER. Если вы хотите зарегистрировать надстройку VSTO для всех пользователей компьютера, разверните ее с использованием установщика Windows. Дополнительные сведения об этих типах развертывания см. в статье "Развертывание решения Office с помощью ClickOnce и развертывание решения Office с помощью установщика Windows".

Записи реестра

Необходимые записи реестра надстроек VSTO находятся в следующих разделах реестра, где корневой каталог HKEY_CURRENT_USER или HKEY_LOCAL_MACHINE в зависимости от того, является ли установка текущего пользователя или всех пользователей.

Приложение Office Путь конфигурации
Visio Root\Software\Microsoft\Visio\Addins\addins\add-in ID
Все остальные Root\Software\Microsoft\Office\Приложение Office lication name\Addins\addins\add-in ID

Примечание.

Если установщик предназначен для всех пользователей в 64-разрядной версии Windows, рекомендуется включить две записи реестра, одну из них в HKEY_LOCAL_MACHINE\Software\Microsoft и одну под HKEY_LOCAL_MACHINE\Software\WOW6432Node\Microsoft hive. Это связано с тем, что пользователи могут использовать 32-разрядные или 64-разрядные версии Office на компьютере.

Если установщик предназначен для текущего пользователя, он не должен устанавливаться в WOW6432Node, так как путь HKEY_CURRENT_USER\Software является общим.

Дополнительные сведения см . в 32-разрядных и 64-разрядных данных приложения в реестре.

В следующей таблице перечислены записи в данном разделе реестра.

Формат ввода Тип значение
Description REG_SZ Обязательно. Краткое описание надстройки VSTO.

Это описание отображается, когда пользователь выбирает надстройку VSTO на панели Надстройки диалогового окна Параметры в приложении Microsoft Office.
FriendlyName REG_SZ Обязательно. Описательное имя надстройки VSTO, которое отображается в диалоговом окне Надстройки COM в приложении Microsoft Office. Значением по умолчанию является идентификатор надстройки VSTO.
LoadBehavior REG_DWORD Обязательно. Значение, указывающее, когда приложение пытается загрузить надстройку VSTO и текущее состояние надстройки VSTO («Загружена» или «Выгружена»).

По умолчанию эта запись имеет значение 3, которое означает, что надстройка VSTO загружается при запуске. Дополнительные сведения см. в разделе "Значения LoadBehavior".

Примечание. Если пользователь отключает надстройку VSTO, это действие изменяет значение LoadBehavior в кусте реестра HKEY_CURRENT_USER . Для каждого пользователя значение LoadBehavior в HKEY_CURRENT_USER hive переопределяет значение LoadBehavior по умолчанию, определенное в HKEY_LOCAL_MACHINE hive.
Манифест REG_SZ Обязательно. Полный путь манифеста развертывания для надстройки VSTO. Путь может быть расположением на локальном компьютере, в сетевой папке (UNC) или на веб-сервере (HTTP).

Если для развертывания решения используется установщик Windows, необходимо добавить префикс file:/// в путь манифеста . Кроме того, необходимо добавить строку |vstolocal (то есть символ | канала, за которым следует vstolocal) в конец этого пути. Это гарантирует загрузку решения из папки установки, а не из кэша ClickOnce. Дополнительные сведения см. в статье "Развертывание решения Office с помощью установщика Windows".

Примечание. При создании надстройки VSTO на компьютере разработки Visual Studio автоматически добавляет строку |vstolocal в эту запись реестра.

Записи реестра для областей форм Outlook

При создании настраиваемой области формы в надстройке VSTO для приложения Outlook для регистрации области формы в Outlook используются дополнительные записи реестра. Эти записи создаются в отдельном разделе реестра для каждого класса сообщений, поддерживаемого областью формы. Эти разделы реестра находятся в следующем расположении, где корневой каталог HKEY_CURRENT_USERили HKEY_LOCAL_MACHINE.

Root\Software\Microsoft\Office\Outlook\FormRegions\class

Подобно другим записям реестра, общим для всех надстроек VSTO, Visual Studio создает записи реестра области формы на компьютере разработчика при выполнении сборки проекта. С помощью ClickOnce для развертывания надстройки VSTO записи реестра автоматически создаются на компьютере конечного пользователя. При использовании установщика Windows для развертывания надстройки VSTO необходимо настроить проект InstallShield Limited Edition для создания записей реестра на компьютере конечного пользователя.

Дополнительные сведения о записях реестра регионов формы см. в разделе "Указание расположения области формы" в настраиваемой форме. Дополнительные сведения о регионах форм Outlook см. в статье "Создание областей форм Outlook".

Значения LoadBehavior

Запись LoadBehavior в корневом каталоге \Software\Microsoft\Office\application name\Addins\addins\add-in ID содержит побитовое сочетание значений, указывающее поведение времени выполнения надстройки VSTO. Младший бит (значения 0 и 1) указывает, загружена ли надстройка VSTO в данный момент. Остальные биты указывают, когда приложение пытается загрузить надстройку VSTO.

Как правило, запись LoadBehavior должна иметь значение 0, 3 или 16 (десятично), если надстройка VSTO установлена на компьютерах конечных пользователей. По умолчанию при сборке или публикации надстройки VSTO Visual Studio устанавливает для записи LoadBehavior значение 3.

В следующей таблице перечислены все возможные значения записи LoadBehavior . Некоторые описания в этой таблице относятся к загрузке надстройки VSTO вручную или программным путем. Чтобы загрузить надстройку VSTO вручную, установите флажок рядом с надстройкой VSTO в диалоговом окне Надстройки COM в приложении. Для загрузки надстройки VSTO программным способом укажите для свойства Connect объекта COMAddIn , представляющего надстройку VSTO, значение true.

Значение (десятичное) Состояние надстройки VSTO Поведение при загрузке надстройки VSTO Description
0 Выгружен Не загружайте автоматически Приложение никогда не пытается загрузить надстройку VSTO автоматически. Пользователь может попытаться загрузить надстройку VSTO вручную или сделать это программными средствами.

Если настройка VSTO успешно загружена, значение LoadBehavior остается равным 0, но состояние надстройки VSTO в диалоговом окне Надстройки COM обновляется, указывая, что надстройка VSTO загружена.
1 Загружен Не загружайте автоматически Приложение никогда не пытается загрузить надстройку VSTO автоматически. Пользователь может попытаться загрузить надстройку VSTO вручную или сделать это программными средствами.

Хотя диалоговое окно надстройки COM указывает, что надстройка VSTO загружается после запуска приложения, надстройка VSTO не загружается до тех пор, пока она не загружается вручную или программно.

Если приложение успешно загружает надстройку VSTO, значение LoadBehavior меняется на 0 и остается таким после закрытия приложения.
2 Выгружен Загружать при запуске Приложение не пытается автоматически загрузить надстройку VSTO. Пользователь может попытаться загрузить надстройку VSTO вручную или сделать это программными средствами.

Если приложение успешно загружает надстройку VSTO, значение LoadBehavior меняется на 3 и остается таким после закрытия приложения.
3 Загружен Загружать при запуске Приложение пытается загрузить надстройку VSTO при запуске приложения. Это значение используется по умолчанию при выполнении сборки или публикации надстройки в Visual Studio.

Если приложение успешно загружает надстройку VSTO, значение LoadBehavior остается равным 3. Если при загрузке надстройки VSTO возникает ошибка, значение LoadBehavior меняется на 2 и остается таким после закрытия приложения.
8 Выгружен Загружать по запросу Приложение не пытается автоматически загрузить надстройку VSTO. Пользователь может попытаться загрузить надстройку VSTO вручную или сделать это программными средствами.

Если приложение успешно загружает надстройку VSTO, значение LoadBehavior меняется на 9.
9 Загружен Загружать по запросу Надстройка VSTO загружается только в том случае, если приложение требует его. Например, когда пользователь выбирает элемент пользовательского интерфейса, использующий функциональные возможности надстройки VSTO (например, пользовательскую кнопку на ленте).

Если приложение загрузило надстройку VSTO, значение LoadBehavior остается равным 9, но состояние надстройки в диалоговом окне Надстройки COM обновляется, указывая, что надстройка VSTO загружена. Если при загрузке надстройки VSTO возникает ошибка, значение LoadBehavior меняется на 8.
16 Загружен Загрузить в первый раз, в дальнейшем загружать по запросу Установите это значение, если надстройку VSTO нужно загружать по запросу. Приложение загружает надстройку VSTO при первом запуске приложения пользователем. При следующем запуске приложения приложение загружает все элементы пользовательского интерфейса, определенные надстройкой VSTO. Однако надстройка VSTO не загружается, пока пользователь не выберет элемент пользовательского интерфейса, связанный с надстройкой VSTO.

Если приложение впервые успешно загружает надстройку VSTO, значение LoadBehavior остается равным 16 и надстройка загружается. После завершения работы приложения значение LoadBehavior меняется на 9.