2010-05-07 12 views
9

Tengo un complemento de Outlook 2007 que heredé recientemente y actualmente hay un problema en producción en el que algunos usuarios obtienen su complemento deshabilitado de forma periódica y aparentemente aleatoria. No hay registros del complemento y hay bloques try/catch (y eat) alrededor de cada método/evento en el código del complemento. He hecho algunas búsquedas en Google y descubrí que Outlook hace esta "desactivación suave" de Complementos si hay excepciones no controladas lanzadas a Outlook.Outlook 2007 Add-in Exception Handling

Por lo que puedo ver, no hay excepciones que se están lanzando desde el complemento. Lo que me gustaría hacer es o bien 1) Crear algún tipo de manejador de excepción global en el complemento para estar 100% seguro de que todas las excepciones están atrapadas. O 2) De alguna manera, escuche si Outlook "deshabilita" el complemento en el registro y haga que este oyente elimine la clave de registro que Outlook está configurando.

he tratado de hacer # 1 por el siguiente texto:

AppDomain.CurrentDomain.UnhandledException += AppDomain_UnhandledException; 
System.Windows.Forms.Application.ThreadException += Application_ThreadException;

pero ninguno ha tenido éxito.

Me doy cuenta de que System.Windows.Forms.Application.ThreadException no se aplica necesariamente a los complementos de Outlook, pero pensé por qué no lo intenté.

Además, he leído que Outlook inicia un Dominio de aplicación por separado para Complementos, así que esperaba que el DominioDeDownloader.Downloco actual funcionara para esto. Escribí un código que arroja excepciones intencionadamente para probar y no pude obtener una entrada en ninguno de estos eventos, y Outlook continuó deshabilitando el complemento.

Cualquier ayuda/idea sería muy apreciada.

Respuesta

1

cuando un complemento de perspectiva se deshabilita, cambia el comportamiento de la carga de 3 a 2. Puede verificar este comportamiento de carga del registro para identificar si un complemento está deshabilitado o no.

+0

@kapilg Creo que esta es una información valiosa, así que le doy un +1, pero estoy buscando una forma de evitar que las excepciones no controladas broten y se deshabilite en primer lugar desde mi complemento. Gracias. – Adam

Cuestiones relacionadas