Si usó el generador de Yeoman para complementos de Office para crear el proyecto de complemento (por ejemplo, completando un tutorial de activación basada en eventos), siga la opción Creado con el generador de Yeoman en todo este artículo. De lo contrario, siga los pasos Otros .
Marcar el complemento para la depuración y establecer el puerto del depurador
Obtenga el identificador del complemento del manifiesto.
-
Manifiesto de solo complemento: use el valor del <elemento Id> secundario del elemento raíz< OfficeApp>.
-
Manifiesto unificado para Microsoft 365: use el valor de la propiedad "id" del objeto anónimo
{ ... }
raíz.
En el Registro, marque el complemento para la depuración.
Creado con el generador de Yeoman: en una ventana de línea de comandos, vaya a la raíz de la carpeta del complemento y ejecute el siguiente comando.
npm start
Además de compilar el código e iniciar el servidor local, este comando establece los datos del valor DWORD del HKEY_CURRENT_USER\SOFTWARE\Microsoft\Office\16.0\WEF\Developer\[Add-in ID]\UseDirectDebugger
Registro para este complemento en 1
.
[Add-in ID]
es el identificador del complemento del manifiesto.
Otro: en el HKEY_CURRENT_USER\SOFTWARE\Microsoft\Office\16.0\WEF\Developer\[Add-in ID]\UseDirectDebugger
valor DWORD del Registro, donde [Add-in ID]
es el identificador del complemento del manifiesto, establezca sus datos 1
en .
Nota:
Si la Developer
clave (carpeta) aún no existe en HKEY_CURRENT_USER\SOFTWARE\Microsoft\Office\16.0\WEF\
, complete los pasos siguientes para crearla.
- Haga clic con el botón derecho (o seleccione y mantenga presionada) la clave WEF (carpeta) y seleccione Nueva>clave.
- Denomine a la nueva clave Desarrollador.
En la clave HKEY_CURRENT_USER\SOFTWARE\Microsoft\Office\16.0\Wef\Developer\[Add-in ID]
del Registro , donde [Add-in ID]
es el identificador del complemento del manifiesto, cree un nuevo DWORD
valor con la siguiente configuración.
-
Nombre del valor:
DebuggerPort
-
Datos de valor (hexadecimal):
00002407
Esto establece el puerto del depurador en 9223
.
Inicie Outlook o reinícielo si ya está abierto.
Realice la acción para iniciar el evento para el que está desarrollando, como crear un nuevo mensaje para iniciar el OnNewMessageCompose
evento o notificar mensajes de correo no deseado. Debería aparecer el cuadro de diálogo Depurar controlador basado en eventos.
No interactúe con el cuadro de diálogo todavía.
Puede depurar el complemento mediante la herramienta Microsoft Edge Inspect o Visual Studio Code.
Depuración con Microsoft Edge
Abra Microsoft Edge y vaya a edge://inspect/#devices.
En la sección Destino remoto , busque el complemento con su identificador del manifiesto. A continuación, seleccione Inspeccionar.
Aparece la ventana DevTools.
Nota:
El complemento puede tardar algún tiempo en aparecer en la sección Destino remoto . Es posible que tenga que actualizar la página para que aparezca el complemento.
En la pestaña Orígenes, vaya a file://>Users/[User]/AppData/Microsoft/Office/16.0/Wef/{[OUTLOOK profile GUID]}/[Outlook mail account encoding]/Javascript/[Add-in ID]_[Add-in Version]_[locale]>bundle.js.
Sugerencia
No hay ningún método directo para determinar el GUID del perfil de Outlook o la codificación de la cuenta de correo que se usa en la ruta de acceso del archivobundle.js . Si va a depurar varios complementos simultáneamente, la manera más fácil de acceder al archivo bundle.js de un complemento desde la ventana DevTools es buscar el identificador del complemento en la ruta de acceso del archivo.
En el archivo bundle.js , coloque los puntos de interrupción donde quiera que se detenga el depurador.
Ejecute el depurador.
Depuración con Visual Studio Code
Para depurar el complemento en Visual Studio Code, debe tener instalada al menos la versión 1.56.1.
Configure el depurador en Visual Studio Code. Siga los pasos aplicables al proyecto del complemento.
Creado con el generador de Yeoman
En la línea de comandos, ejecute lo siguiente para abrir el proyecto de complemento en Visual Studio Code.
code .
En Visual Studio Code, abra el archivo ./.vscode/launch.json y agregue el siguiente extracto a la lista de configuraciones. Guarde los cambios.
{
"name": "Direct Debugging",
"type": "node",
"request": "attach",
"port": 9223,
"timeout": 600000,
"trace": true
}
Otros
Cree una nueva carpeta denominada Depuración (quizás en la carpeta Escritorio ).
Abrir Visual Studio Code.
Vaya a Archivo>abrir carpeta, vaya a la carpeta que acaba de crear y, a continuación, elija Seleccionar carpeta.
En la barra de actividad, seleccione Ejecutar y depurar (Ctrl+Mayús+D).
Seleccione el vínculo crear un archivo launch.json .
En la lista desplegable Seleccionar entorno , seleccione Edge: Launch (Edge: Iniciar ) para crear un archivo launch.json.
Agregue el siguiente extracto a la lista de configuraciones. Guarde los cambios.
{
"name": "Direct Debugging",
"type": "node",
"request": "attach",
"port": 9223,
"timeout": 600000,
"trace": true
}
Adjuntar el depurador
El archivo bundle.js de un complemento contiene el código JavaScript del complemento. Se crea cuando se abre outlook clásico en Windows. Cuando se inicia Outlook, el archivo bundle.js de cada complemento instalado se almacena en caché en la carpeta Wef de la máquina.
Para buscar el archivo debundle.js del complemento, vaya a la siguiente carpeta en Explorador de archivos. El texto incluido en []
representa la información aplicable de Outlook y del complemento.
%LOCALAPPDATA%\Microsoft\Office\16.0\Wef\{[Outlook profile GUID]}\[Outlook mail account encoding]\Javascript\[Add-in ID]_[Add-in Version]_[locale]
Sugerencia
No hay ningún método directo para determinar el GUID del perfil de Outlook y la codificación de la cuenta de correo que se usan en la ruta de acceso del archivobundle.js . El enfoque más eficaz para localizar el archivo debundle.js del complemento es inspeccionar manualmente cada carpeta hasta que busque la carpeta Javascript que contiene el identificador del complemento.
Si el archivo bundle.js no aparece en la carpeta Wef y el complemento está instalado o descargado localmente, reinicie Outlook. Como alternativa, quite el complemento de Outlook y vuelva a transferirlo de forma local .
Abra bundle.js en Visual Studio Code.
Coloque puntos de interrupción en bundle.js donde quiera que se detenga el depurador.
En la lista desplegable DEPURAR , seleccione Depuración directa y, a continuación, seleccione el icono Iniciar depuración .
Ejecución del depurador
Después de confirmar que el depurador está asociado, vuelva a Outlook. En el cuadro de diálogo Depurar controlador basado en eventos , elija Aceptar .
Ahora puede alcanzar los puntos de interrupción para depurar el código de activación basada en eventos o de informes de correo no deseado.
Detener el depurador
Para detener la depuración del resto de la sesión actual de Outlook en Windows, en el cuadro de diálogo Depurar controlador basado en eventos , elija Cancelar. Para volver a habilitar la depuración, reinicie Outlook.
Para evitar que el cuadro de diálogo Depurar controlador basado en eventos aparezca y detenga la depuración para las sesiones posteriores de Outlook, elimine la clave del Registro asociada o HKEY_CURRENT_USER\SOFTWARE\Microsoft\Office\16.0\Wef\Developer\[Add-in ID]\UseDirectDebugger
establezca su valor 0
en .
Detener el servidor local
Si desea detener el servidor web local y desinstalar el complemento, siga las instrucciones aplicables:
Para detener el servidor, ejecute el siguiente comando. Si usó npm start
, el siguiente comando también debe desinstalar el complemento.
npm stop
Si descargó manualmente el complemento de forma local, consulte Eliminación de un complemento cargado localmente.