programacion microsoft ins c# .net ms-word ms-office vsto

c# - programacion - microsoft word add ins



Consejos Ăștiles para desarrollar un add-on profesional de MS Word (2)

También recuerdo haber leído que VSTO no era ideal para software comercial. El software interno es otro asunto y finalmente ha avanzado (al menos en mi organización).

Creo que el argumento más importante tiene que ver con las versiones heredadas de Office. VSTO solo es compatible con Office 2003. Además, las dependencias requeridas por VSTO han sido difíciles de distribuir en el pasado, aunque esto disminuye con el tiempo con las nuevas versiones de Windows.

Por ejemplo, mi último proyecto requiere lo siguiente (asumiendo, pero verificando que .Net framework 3.5 esté instalado):

  1. VSTO Runtime 3.0
  2. VSTO Runtime 3.0 SP1
  3. Asambleas de interoperabilidad primaria de Microsoft Office 2007
  4. Revisión para Office (KB976477): todos los usuarios obtienen el complemento de nivel de aplicación

Hace unos meses, reuní una pieza de software de prueba de concepto simple para una empresa pequeña con una idea para una herramienta de edición de documentos. La compañía quería que esta herramienta se integrara en Microsoft Word, comprensiblemente, para maximizar su accesibilidad para el usuario promedio.

En esencia, escribí la biblioteca subyacente con todas las funcionalidades básicas como un proyecto de C #, y luego usé VSTO para ejecutarlo dentro de Word. Se sentía como una solución de cinta de conducto, realmente; pero entonces, tengo (prácticamente) cero experiencia en el desarrollo de herramientas para la integración con MS Office, y de todos modos solo fue una prueba de concepto.

Bueno, la empresa estaba bastante satisfecha con mi trabajo en general, y están buscando pasar de la "prueba de concepto" al verdadero negocio. Afortunadamente, como dije, la funcionalidad principal está ahí y solo tendrá que modificarse y mejorarse un poco. Mi principal preocupación es descubrir cómo armar una aplicación que se integre con MS Word de una manera limpia y pulida, y que se pueda implementar fácilmente de acuerdo con las expectativas de un usuario normal (es decir, simplemente ejecutando un programa de instalación y listo, es allí en Word).

Me parece recordar haber leído en alguna parte que nadie usa VSTO para proyectos profesionales reales. ¿Es esto cierto? ¿Falso? ¿Cuáles son las alternativas? ¿Y cuáles son los consejos y errores que debería tener en cuenta antes de comenzar con este tema de la integración de MS Word?


Uno de los principales problemas con la implementación de soluciones VSTO ha sido el tamaño total de implementación. Tienes

  • tu solución
  • la versión VSTO Runtime del proyecto
  • la versión de .NET Framework del proyecto
  • las Interoperaciones primarias

Esto podría convertir fácilmente su solución simple y eficiente en 40-50MB para que alguien la descargue. Los entornos corporativos son algo más fáciles de implementar, pero el software de calidad comercial es más difícil.

Esto está parcialmente resuelto ahora en VSTO 2010 con una especie de "solo los componentes que está usando en realidad" Despliegue primario de interoperabilidad. Esto y otras cosas para facilitar la implementación, como One-Click, son sin duda una razón para considerar VSTO 2010. Hay algunas buenas introducciones a esto en el Canal 9 .

Sin embargo, los productos comerciales que usan VSTO no son desconocidos: StoryboarderPro fue escrito en VSTO y es popular en la industria del eLearning.