2010-04-28 28 views
6

Tengo algunos problemas al crear un archivo de instalación para mi complemento de Outlook 2007.Despliegue de la instalación de VSTO (complemento de Outlook) (C#)

El problema es que el complemento necesita tener una entrada de registro que haga referencia al manifiesto (http://msdn.microsoft.com/en-us/library/bb386106.aspx). El proyecto crea un archivo de manifiesto que aparece en mi carpeta bin \ debug. Sin embargo, en mi proyecto de configuración, si voy y añado el resultado del proyecto, el manifiesto nunca se incluye como parte de la salida. Por extraño que parezca, el programa de instalación crea una entrada de registro que hace referencia a mi manifiesto en mi carpeta bin \ debug, pero esto no es adecuado, ya que esa carpeta no está disponible en las máquinas en las que se desplegará.

Gracias.

====================================

para los interesados, algunos antecedentes cuestiones.

  1. Si uso la salida del proyecto en mi configuración, el complemento VSTO se instala bien la primera vez. Si desinstalo y reinstalo utilizando la misma configuración, no se instala correctamente. Si reconstruyo la configuración, se vuelve a instalar bien (en otras palabras, solo se instala la primera vez que se ejecuta una configuración).
  2. Corregí (1) pero eliminé el resultado del proyecto de mi proyecto de configuración y en su lugar agregué los archivos manualmente (mi dll + el manifiesto) y luego actualicé las claves de registro para apuntar al manifiesto agregado. Esta vez, puedo desinstalar y volver a instalar todo lo que quiera con la misma configuración. Sin embargo, por alguna razón, la instalación crea dos entradas de registro, una que he puesto manualmente que se refiere al manifiesto que incluí y otra que se referencia automáticamente y apunta al manifiesto en mi carpeta bin \ debug. No puedo eliminar este segundo conjunto de entradas de registro ya que no aparecen en ningún lugar de mi proyecto de configuración. El problema de dejarlos allí es que el complemento ejecuta cada comando dos veces (ya que está registrado dos veces).

impar, ¿eh?

+0

Normalmente VSTO se instalan a través de ClickOnce, para hacer una MSI hay que seguir muchos pasos para hacer que funcione. ¿ClickOnce no es una opción? – 76mel

+0

Nunca he hecho clic una vez, pero no creo que sea una opción. No deseamos publicar en un servidor en este momento – i8abug

+0

Haga clic una vez Puede simplemente publicar en una unidad local o compartir en cualquier lugar, pero para la instalación de msi comience a leer http://blogs.msdn.com/mshneer/archive/2007/ 04/04/deploying-your-vsto-add-in-to-all-users-part-i.aspx – 76mel

Respuesta

5

me encontré con este libro blanco Microsoft en VSTO para Office 2007 complemento despliegue muy útil: http://msdn.microsoft.com/en-us/library/cc563937(office.12).aspx
(I inicialmente vinculado a otro papel que también es grande, pero se aplica a 2003 + 2007, que es algo diferente : http://msdn.microsoft.com/en-us/library/bb332052.aspx)
Específicamente en la cuestión del manifiesto, descubrí por la mala manera que cuando la clave de registro para el complemento tenía el mismo nombre que el complemento en sí, por algún motivo misterioso durante la compilación, el Manifiesto el valor se reemplazó silenciosamente desde el manifiesto de VSTO al manifiesto de complemento.

+3

Aquí está la versión actualizada (VSTO 2010) del documento técnico: http://msdn.microsoft.com/en-us/library/ff937654.aspx – bernhof

Cuestiones relacionadas