Поделиться через


Загрузка неопубликованных надстроек Office, использующих унифицированный манифест для Microsoft 365

Процесс загрузки неопубликованного надстройки, использующего манифест Unified для Microsoft 365 , зависит от того, какое средство вы хотите использовать, а также от того, как был создан проект надстройки.

Примечание.

Надстройку, которая использует унифицированный манифест, можно загрузить в Office в Windows версии 2304 (сборка 16320.20000) или более поздней. Загрузка неопубликованных приложений в Windows также влияет на загрузку неопубликованных приложений в Office в Интернете. В настоящее время его невозможно загрузить на Mac или iPad.

Загрузка неопубликованных надстроек, созданных с помощью генератора Yeoman для надстроек Office (Yo Office)

Используйте процесс, описанный в разделе Загрузка неопубликованных приложений с помощью системного запроса, оболочки bash или терминала.

Загрузка неопубликованных приложений с помощью набора средств агентов Microsoft 365

  1. Сначала убедитесь, что классическое приложение Office, в которое вы хотите загрузить неопубликованное приложение, закрыто.

  2. В Visual Studio Code откройте Набор средств агентов.

  3. Требуется только для Outlook: в разделе Учетные записи убедитесь, что вы вошли в Microsoft 365.

  4. Выберите Просмотр | выполнить в Visual Studio Code. В раскрывающемся меню ЗАПУСК И ОТЛАДКА выберите один из этих параметров, подходящий для вашей надстройки.

    • Excel Desktop (Edge Chromium)
    • Outlook Desktop (Edge Chromium)
    • PowerPoint Desktop (edge Chromium)
    • Word Desktop (Edge Chromium)
  5. Нажмите клавишу F5. Выполняется сборка проекта, и откроется окно Node dev-server. Этот процесс может занять несколько минут, после чего откроется классическая версия выбранного приложения Office. Теперь вы можете работать с надстройкой. Для надстройки Outlook убедитесь, что вы работаете в папке "Входящие"удостоверения учетной записи Microsoft 365.

  6. Чтобы остановить отладку и удалить надстройку, выберите Запустить | остановить отладку в Visual Studio Code. Закрытие окна сервера не приводит к надежной остановке сервера, а закрытие приложения Office не приводит к отмене запроса надстройки Office.

    Примечание.

    Если предыдущий шаг не повлияет, удалите надстройку, открыв терминал в Visual Studio Code, а затем выполните шаг удаления (последний шаг) раздела Загрузка неопубликованных приложений с помощью системного запроса, оболочки Bash или терминала.

Загрузка неопубликованных приложений с помощью системного запроса, оболочки Bash или терминала

  1. Сначала убедитесь, что классическое приложение Office, в которое вы хотите загрузить неопубликованное приложение, закрыто.
  2. Откройте системный запрос, оболочку bash или Visual Studio Code TERMINAL и перейдите к корню проекта.
  3. Команда для загрузки неопубликованного надстройки зависит от того, когда был создан проект. Если раздел "scripts" файла package.json проекта содержит скрипт start:desktop, выполните ; в npm run start:desktopпротивном случае выполните команду npm run start. Выполняется сборка проекта, и откроется окно Node dev-server. Этот процесс может занять несколько минут, после чего откроется ведущее приложение Office (Excel, Outlook, PowerPoint или Word).
  4. В некоторых версиях Office надстройка может активироваться не полностью. Например, кнопки надстройки могут не отображаться на ленте. В этом случае нажмите кнопку Надстройки на ленте Главная . На открывающемся всплывающем окне выберите надстройку. Установка завершается.
  5. Теперь вы можете работать с надстройкой.
  6. Завершив работу с надстройкой, обязательно выполните команду npm run stop. Закрытие окна сервера не приводит к надежной остановке сервера, а закрытие приложения Office не приводит к отмене запроса надстройки Office.

Загрузка неопубликованных проектов NodeJS и npm

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

Загрузка неопубликованных приложений с помощью средства Office-Addin-Debugging

  1. Чтобы загрузить неопубликованную надстройку, выполните следующую команду. Эта команда помещает унифицированный манифест и два файла изображений значков, на которые ссылается свойство манифеста "icons" , в ZIP-файл и загружает его в приложение Office. Он также запускает сервер в отдельном окне NodeJS для размещения файлов надстройки на localhost. Дополнительные сведения об этой команде см. в разделе Office-Addin-Debugging.

    npx office-addin-debugging start <relative-path-to-unified-manifest> desktop
    
  2. При использовании office-addin-debugging для запуска надстройки всегда прерывайте сеанс с помощью следующей команды. Закрытие окна сервера не приводит к надежной остановке сервера, а закрытие приложения Office не приводит к отмене запроса надстройки Office.

    npx office-addin-debugging stop <relative-path-to-unified-manifest>
    

Загрузка неопубликованных приложений с помощью интерфейса командной строки microsoft 365 Agents Toolkit (интерфейс командной строки)

  1. Создайте ZIP-пакет. См . раздел Создание файла пакета надстройки вручную.

  2. В корневой части проекта откройте командную строку или оболочку bash и выполните следующую команду, чтобы установить интерфейс командной строки набора средств агентов.

    npm install -g @microsoft/m365agentstoolkit-cli
    
  3. Выполните следующую команду, чтобы загрузить неопубликованную надстройку.

    atk install --file-path <relative-path-to-zip-file>
    

    Важно!

    Эта команда возвращает некоторые сведения о надстройке, включая автоматически сформированный идентификатор заголовка, как показано в следующем примере.

    Команда

    Этот идентификатор заголовка потребуется для завершения сеанса загрузки и отладки неопубликованных приложений. Он записывается на компьютерах Windows в следующем разделе реестра:

    HKEY_CURRENT_USER\SOFTWARE\Microsoft\Office\16.0\Wef\Developer\OutlookSideloadManifestPath\TitleId

    Строка "Outlook" находится в имени ключа по историческим причинам, но она применяется к любой надстройке, установленной с интерфейсом командной строки набора средств агентов.

    Записывается только последняя надстройка, установленная с интерфейсом командной строки. Если вы загружаете неопубликованную надстройку с помощью интерфейса командной строки перед удалением более ранней надстройки, установленной с помощью CLI, то в реестре отсутствует запись идентификатора заголовка предыдущей надстройки. Поэтому рекомендуется также сохранить его в текстовом файле в корне проекта и присвоить файлу имяTitleID.txt на компьютерах Mac и Windows.

  4. При использовании интерфейса командной строки набора средств агентов для запуска надстройки всегда прерывайте сеанс с помощью следующей команды. Закрытие окна сервера не приводит к надежной остановке сервера, а закрытие приложения Office не приводит к отмене запроса надстройки Office. Замените "{title ID}" идентификатором заголовка надстройки, включая префикс "U_". например, U_90d141c6-cf4f-40ee-b714-9df9ea593f39.

    atk uninstall --mode title-id --title-id {title ID} --interactive false
    

    Важно!

    В документации по команде uninstall описывается способ использования идентификатора манифеста надстройки вместо идентификатора заголовка. Из-за ошибки в API, вызываемом CLI, этот параметр в настоящее время не работает. Необходимо использовать указанную uninstall выше команду и включить --interactive false параметр .

Загрузка неопубликованных приложений через магазин приложений Teams

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

  1. Создайте пакет приложения вручную, если он еще не был создан средством. См . раздел Создание файла пакета надстройки вручную.

  2. Закройте все приложения Office, а затем очистите кэш Office, следуя инструкциям в разделе Очистка кэша вручную.

  3. Откройте Teams и выберите Приложения на панели приложений, а затем выберите Управление приложениями в нижней части области Приложения .

  4. Выберите Отправить приложение в диалоговом окне Приложения , а затем в открывшемся диалоговом окне выберите Отправить пользовательское приложение.

  5. В диалоговом окне Открыть перейдите к пакету приложения и выберите его.

  6. В открывшемся диалоговом окне выберите Добавить .

  7. Когда появится запрос на добавление приложения, не открывайте его в Teams. Вместо этого закройте Teams.

  8. Следующая задача — запустить локальный веб-сервер, на котором размещаются файлы HTML и JavaScript проекта. Способ выполнения этой задачи зависит от нескольких факторов, включая структуру папок проекта, используемые средства, такие как средство обработки пакетов, диспетчер задач, серверное приложение и способ настройки этих средств. Следующая инструкция применяется только к проектам, которые соответствуют следующим условиям.

    • В корневой папке проекта есть webpack.config.js файл, аналогичный файлам в проектах надстроек, созданных с помощью генератора Yeoman для надстроек Office или набора средств агента Microsoft 365.

    • В корневой папке проекта есть package.json файл, аналогичный файлам, созданным теми же двумя инструментами, и файл содержит раздел "scripts" со следующим скриптом.

      "dev-server": "webpack serve --mode development"
      
  9. В командной строке или Visual Studio Code TERMINAL в корневом каталоге проекта выполните команду npm run dev-server , чтобы запустить сервер на локальном узле.

  10. Откройте приложение Office, предназначенное для надстройки. Дождитесь загрузки надстройки. Это может занять целых две минуты. В зависимости от версии Office кнопки ленты и другие артефакты могут отображаться автоматически. В некоторых версиях необходимо вручную активировать надстройку: нажмите кнопку Надстройки на ленте Главная , а затем во всплывающем окне выберите надстройку. Имя будет указано в свойстве "name.short" манифеста.

Важно!

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

  1. Закройте приложение Office.
  2. Завершите работу сервера. Сведения о том, как это сделать, см. в документации для серверного приложения. Для приложения webpack dev-server завершение работы зависит от того, работает ли сервер в том же окне, в котором вы работали npm run dev-server , или в другом окне. Если это то же окно, наведите фокус терминала и нажмите клавиши CTRL+C. Выберите "Y" в ответ на запрос, чтобы завершить процесс. Если он находится в другом окне, то в окне, в котором вы запустили npm run dev-server, выполните команду npm run stop.
  3. Очистите кэш Office, следуя инструкциям в разделе Очистка кэша вручную.
  4. Откройте Teams и выберите Приложения на панели приложений, а затем выберите Управление приложениями в нижней части области Приложения .
  5. Найдите свою надстройку в списке приложений. Имя будет указано в свойстве "name.short" манифеста.
  6. Выберите надстройку из списка приложений, чтобы развернуть ее строку.
  7. Щелкните значок корзины и нажмите кнопку Удалить в командной строке.

Внесите изменения, а затем снова загрузите неопубликованную надстройку.

Создание файла пакета надстройки вручную

При использовании унифицированного манифеста единицей установки и загрузки неопубликованных приложений является zip-файл пакета. Этот файл обычно создается с помощью средств, используемых для создания и тестирования надстройки, но в некоторых случаях он создается вручную. Для этого используйте любую служебную программу ZIP, чтобы создать ZIP-файл, содержащий следующие файлы.

  • Унифицированный манифест, который входит в корень ZIP-файла.
  • Два файла изображений, на которые ссылается "icons" свойство манифеста.
  • Все файлы локализации, на которые ссылается "localizationInfo" свойство манифеста.
  • Все декларативные файлы агента, на которые ссылается "copilotAgents" свойство .
  • Любые дополнительные файлы второго уровня. Например, декларативные файлы конфигурации агента иногда ссылались на дополнительные файлы второго уровня, например файлы конфигурации подключаемого модуля. Они также должны быть включены.

Важно!

Все эти файлы должны иметь тот же относительный путь в ZIP-файле, как указано в манифесте. Например, если путь к двум файлам изображений — assets/icon-64.png и assets/icon-128.png, необходимо включить папку assets с двумя файлами в ZIP-пакет. Файлы второго уровня, например файлы конфигурации подключаемого модуля для декларативных агентов, должны иметь тот же относительный путь в ZIP-файле, что и в файле первого уровня, который ссылается на них. Например, если относительный путь к декларативному файлу агента, указанному в манифесте, — agents/myAgent.json, необходимо включить папку агентов в ZIP-пакет и поместить в нее myAgent.json файл. Если декларативный файл агента, в свою очередь, предоставляет относительный путь подключаемых модулей/myPlugin.json для файла конфигурации подключаемого модуля, необходимо включить вложенную папку plugins в папку agents и поместить в нее файл myPlugin.json .

Чтобы обеспечить максимальную совместимость со средствами разработки Microsoft 365, рекомендуется хранить файлы, которые будут включены в пакет, в папке appPackage в корневой папке проекта, а файл пакета поместить во вложенную папку build в папку appPackage .

Ниже приведены примеры рекомендуемой структуры. Структура внутри файла\build\appPackage.zip должна зеркало структуру папки appPackage, за исключением самой папки сборки.

\appPackage
    \assets
        color.png
        outline.png
    \build
        appPackage.zip
    manifest.json
\appPackage
    \agents
        myAgent.json
        \plugins
            myPlugin.json
    \assets
        color.png
        outline.png
    \build
        appPackage.zip
    \languages
        fr-FR.json
        es-MX.json
    manifest.json

Примечание.

Файлы JSON, на которые ссылается свойство, "extensions.keyboardShortcuts.keyMappingFiles"не включаются в пакет приложения. Они развертываются с файлами веб-приложения надстройки. Дополнительные сведения см. в статье Поддержка обратной совместимости надстроек с унифицированным манифестом в Microsoft Marketplace.