2011-10-13 18 views
5

He instalado Visual Studio 2010 y Office 2007. Cuando vaya a "Agregar referencia" y busque " Oficina de interoperabilidad" Puedo ver que cada una de las referencias aparecen dos veces con versiones 12 y 14.¿Cuál es la diferencia entre Microsoft.Office.Interop. * Versión 12 y 14?

I Intentó inicialmente la versión 14 de Microsoft.Office.Interop.Word e hizo una prueba rápida. Inicialice la aplicación, abra un documento, cierre el documento, salga de la aplicación y libere el objeto COM. Mi prueba fue un simple programa WinForms en C# 4.0.

WINWORD.EXE se bloqueó al cerrar el documento.

Cambié la referencia a la versión 12 y dejé mi código exactamente como estaba y lo intenté de nuevo. Todo funcionó bien

He escrito el resto de mi código usando la versión 12 y no he tenido ningún problema.

Así que ahora tengo curiosidad: hay algunas pequeñas diferencias entre los miembros expuestos públicamente en Microsoft.Office.Interop.* en las versiones 12 y 14, pero en gran parte hay mucha superposición.

¿Cuál es la diferencia real? ¿Por qué falló mi prueba simple aunque tengo una versión relativamente nueva de Office? y ¿existe una regla empírica sobre qué versión debería elegir el desarrollador al iniciar un proyecto de interoperabilidad?

Respuesta

13

La versión 12 es interoperabilidad para Office 2007, mientras que 14 es para Office 2010. AFAIK, a menos que realmente necesite nuevas características de la 14ª versión, puede usar una versión inferior de biblioteca interoperativa y funcionará bien para todas las versiones más recientes de oficina.

Cuestiones relacionadas