Pregunta

Estoy tratando de diagnosticar por qué mi plug-in de Outlook escrito en C # / VSTO 3.0 / VS 2008 no se carga después de haber sido instalado.

El plugin funciona asombrosamente en mi máquina de desarrollo, que tiene instalado Visual Studio 2008. No puedo esperar que todos mis usuarios tengan todos los requisitos previos, aunque por lo que fui a través de estos pasos para escribir un instalador: http://msdn.microsoft.com/en-us/library /cc563937(loband).aspx

He instalado el complemento en una máquina nueva de Windows XP SP 2 con una nueva instalación de Outlook 2007. Se instala todos los prerrequisitos ok (.NET 3.5, 3.0 tiempo de ejecución VSTO, Windows Installer 3.1, 2007 PIA). Outlook se inicia pero el complemento no se ejecuta. Si voy a la ficha Complementos en el Centro de confianza, veo a mi complemento en la "Solicitud Inactivo Complementos" sección con el mensaje "no se ha cargado. Se ha producido un error de ejecución durante la carga del complemento COM . ".

No está seguro de cómo encontrar el error específico para que pueda solucionarlo.

Las claves reg ven bien. En HKEY_CURRENT_USER \ Software \ Microsoft \ Office \ Outlook \ Addins \ BlahAddin veo Descripción, FriendlyName, LoadBehavior (ajustado a 3 hasta que falla después de lo cual, si se vuelve a establecer 2), y manifiesto.

Probamos las VSTO_SUPPRESSDISPLAYALERTS ambiente truco variable y después lanzó Outlook desde la línea de comandos pero no hay salida salió.

Tengo la depuración remota, más o menos trabajo, pero no estoy seguro de lo que debe buscar. No veo mi DLL de carga cuando hay que adjuntar a Outlook, pero entonces otra vez quizá DLL administrados no se presentan de la misma manera en VS.

¿Alguna otra idea sobre los próximos pasos que podía seguir para producir un error específico que pueda diagnosticar?

¿Fue útil?

Solución

solucionado mi problema después de semanas de dolor. La llave del registro "Manifiesto" se estaba dañado a un valor deseado durante la construcción de configuración. Fue un error conocido de Visual Studio que supuestamente fue resuelto en Visual Studio 2008 SP1, pero al parecer no era para mí. Volviendo a nombrar el proyecto sea diferente del nombre del plugin solucionó el problema. Al azar, ¿eh?

Otros consejos

Asegúrate de que tienes try-catch manipuladores en el nivel superior de todos los métodos llamados por Outlook y registrar las excepciones que no son capaces de manejar de alguna manera. Enfoque su solución de problemas en métodos como el método Startup y otros métodos llamados durante la inicialización.

Es posible que desee depurar este utilizando el depurador remoto. Compartir la carpeta Msvcmon.exe desde su ordenador de desarrollo (en las carpetas de Visual Studio en Archivos de programa) en su máquina de prueba (compartirlo con una ruta UNC), y lanzar de Outlook bajo el atrapamiento depurador (.NET) excepciones en sus módulos y poner puntos de interrupción en sus métodos.

Si es necesario limpiar el equipo de prueba cada vez antes de instalar su solución, probablemente debería correr XP bajo un PC virtual 2007 VM (descarga gratuita) y cambiar a una HD de diferenciación después de configurar todo, pero el plugin para una instantánea de su estado pre-instalado una vez por lo que no tiene que mantener desinstalar / reinstalar cuando se realizan cambios a su programa para corregir errores.

¿Va a instalar versiones de depuración o generaciones de lanzamiento? Tal vez un sabor tiene diferentes requisitos. Sólo una suposición.

-Mike [MSFT Oficina Dev]

En el equipo, cuando se ejecuta el complemento de Visual Studio, debe crear una clave del registro HKEY_CURRENT_USER \ Software \ Microsoft \ VSTO \ Seguridad \ Inclusión {} SomeGuid. Asegúrese de que estos valores del registro también se están desplegando con su complemento. Ellos son los que permiten que su código para ser de confianza.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top