Если вы использовали генератор Yeoman для надстроек Office для создания проекта надстройки (например, выполнив пошаговое руководство по активации на основе событий), следуйте инструкциям в этой статье с параметром Создано с помощью генератора Yeoman . В противном случае выполните другие действия .
Пометка надстройки для отладки и настройка порта отладчика
Получите идентификатор надстройки из манифеста.
-
Манифест только надстройки. Используйте значение дочернего <элемента Id> корневого <элемента OfficeApp> .
-
Унифицированный манифест для Microsoft 365: используйте значение свойства id корневого анонимного
{ ... }
объекта.
В реестре пометьте надстройку для отладки.
Создано с помощью генератора Yeoman. В окне командной строки перейдите к корневой папке надстройки, а затем выполните следующую команду.
npm start
Помимо сборки кода и запуска локального сервера эта команда задает для данных HKEY_CURRENT_USER\SOFTWARE\Microsoft\Office\16.0\WEF\Developer\[Add-in ID]\UseDirectDebugger
DWORD реестра значение DWORD для этой надстройки 1
.
[Add-in ID]
— это идентификатор надстройки из манифеста.
Другое. В параметре HKEY_CURRENT_USER\SOFTWARE\Microsoft\Office\16.0\WEF\Developer\[Add-in ID]\UseDirectDebugger
DWORD реестра, где [Add-in ID]
— это идентификатор надстройки из манифеста, задайте для его данных 1
значение .
Примечание.
Developer
Если ключ (папка) еще не существует в HKEY_CURRENT_USER\SOFTWARE\Microsoft\Office\16.0\WEF\
, выполните следующие действия, чтобы создать его.
- Щелкните правой кнопкой мыши (или выберите и удерживайте) ключ (папку ) WEF и выберите Новый>ключ.
- Назовите новый ключ Разработчик.
В разделе HKEY_CURRENT_USER\SOFTWARE\Microsoft\Office\16.0\Wef\Developer\[Add-in ID]
реестра , где [Add-in ID]
— это идентификатор надстройки из манифеста, создайте новое DWORD
значение со следующей конфигурацией.
-
Имя значения:
DebuggerPort
-
Данные значений (шестнадцатеричные):
00002407
При этом порт отладчика задается в 9223
значение .
Запустите Outlook или перезапустите его, если он уже открыт.
Выполните действие, чтобы инициировать событие, для которое вы разрабатываете, например создайте новое сообщение для инициации события или сообщите OnNewMessageCompose
о спаме. Должно появиться диалоговое окно Обработчик на основе событий отладки . Пока не взаимодействовать с диалогом.
Вы можете выполнить отладку надстройки с помощью средства проверки Microsoft Edge или Visual Studio Code.
Отладка с помощью Microsoft Edge
Откройте Microsoft Edge и перейдите к edge://inspect/#devices.
В разделе Удаленный целевой объект найдите надстройку, используя ее идентификатор из манифеста. Затем выберите Проверить.
Откроется окно Средства разработки.
Примечание.
Для отображения надстройки в разделе Удаленный целевой объект может потребоваться некоторое время. Возможно, потребуется обновить страницу, чтобы появилась надстройка.
На вкладке Источники перейдите в раздел file://>Пользователи/[Пользователь]/AppData/Microsoft/Office/16.0/Wef/{[[Outlook profile GUID]}/[Кодировка учетной записи почты Outlook]/Javascript/[Идентификатор надстройки]_[Версия надстройки]_[языковой стандарт]>bundle.js.
Совет
Нет прямого метода для определения GUID профиля Outlook или кодировки учетной записи почты, используемой в bundle.js пути к файлу. При одновременной отладке нескольких надстроек самый простой способ получить доступ к файлуbundle.js надстройки из окна Средства разработки — найти идентификатор надстройки в пути к файлу.
В файлеbundle.js поместите точки останова в место остановки отладчика.
Запустите отладчик.
Отладка с помощью Visual Studio Code
Для отладки надстройки в Visual Studio Code необходимо установить не менее версии 1.56.1.
Настройте отладчик в Visual Studio Code. Выполните действия, применимые к проекту надстройки.
Создано с помощью генератора Yeoman
В командной строке выполните следующую команду, чтобы открыть проект надстройки в Visual Studio Code.
code .
В Visual Studio Code откройте файл ./.vscode/launch.json и добавьте следующий фрагмент в список конфигураций. Сохраните изменения.
{
"name": "Direct Debugging",
"type": "node",
"request": "attach",
"port": 9223,
"timeout": 600000,
"trace": true
}
Прочее
Создайте папку с именем Отладка (возможно, в папке "Рабочий стол ").
Откройте Visual Studio Code.
Перейдите в раздел Файл>Открыть папку, перейдите в только что созданную папку, а затем выберите Выбрать папку.
На панели действий выберите Запуск и отладка (CTRL+SHIFT+D).
Выберите ссылку создать файл launch.json .
В раскрывающемся списке Выбор среды выберите Edge: Запуск , чтобы создать файл launch.json.
Добавьте следующий фрагмент в список конфигураций. Сохраните изменения.
{
"name": "Direct Debugging",
"type": "node",
"request": "attach",
"port": 9223,
"timeout": 600000,
"trace": true
}
Подключение отладчика
Файлbundle.js надстройки содержит код JavaScript надстройки. Он создается при открытии классического Outlook в Windows. При запуске Outlook файлbundle.js каждой установленной надстройки кэшируется в папке Wef компьютера.
Чтобы найти файлbundle.js надстройки, перейдите в следующую папку в проводник. Текст, заключенный в []
, представляет применимые сведения о Outlook и надстройке.
%LOCALAPPDATA%\Microsoft\Office\16.0\Wef\{[Outlook profile GUID]}\[Outlook mail account encoding]\Javascript\[Add-in ID]_[Add-in Version]_[locale]
Совет
Нет прямого метода для определения GUID профиля Outlook и кодировки учетной записи почты, используемых в bundle.js пути к файлу. Наиболее эффективный подход к поиску файлаbundle.js надстройки — вручную проверять каждую папку, пока не будет обнаружена папка Javascript , содержащая идентификатор надстройки.
Если файлbundle.js не отображается в папке Wef , а надстройка установлена или загружена неопубликованно, перезапустите Outlook. Кроме того, удалите надстройку из Outlook, а затем снова загрузите ее неопубликованное приложение.
Откройте bundle.js в Visual Studio Code.
Разместите точки останова в bundle.js , где отладчик будет останавливаться.
В раскрывающемся списке ОТЛАДКА выберите Прямая отладка, а затем щелкните значок Начать отладку .
Запуск отладчика
Убедившись, что отладчик подключен, вернитесь в Outlook. В диалоговом окне Обработчик на основе событий отладки нажмите кнопку ОК .
Теперь вы можете достичь точек останова для отладки кода активации на основе событий или сообщения о спаме.
Остановка отладчика
Чтобы остановить отладку остальной части текущего сеанса Outlook в Windows, в диалоговом окне Обработчик на основе событий отладки нажмите кнопку Отмена. Чтобы повторно включить отладку, перезапустите Outlook.
Чтобы предотвратить появление диалогового окна обработчика на основе событий отладки и прекращения отладки для последующих сеансов Outlook, удалите связанный раздел HKEY_CURRENT_USER\SOFTWARE\Microsoft\Office\16.0\Wef\Developer\[Add-in ID]\UseDirectDebugger
реестра или задайте для его значения 0
значение .
Остановка локального сервера
Если вы хотите остановить локальный веб-сервер и удалить надстройку, следуйте применимым инструкциям:
Чтобы остановить сервер, выполните следующую команду. Если вы использовали npm start
, следующая команда также должна удалить надстройку.
npm stop
Если вы вручную загрузили неопубликованную надстройку, см. статью Удаление неопубликоченной надстройки.