Compartir a través de


Cambios en el diseño de proyectos de Office destinados a .NET Framework 4 o .NET Framework 4.5

A partir de Visual Studio 2010, Visual Studio presenta algunos cambios en el diseño de Office destinados a .NET Framework 4 o .NET Framework 4.5.Si está familiarizado con los proyectos de Office en las versiones anteriores de Visual Studio, debe conocer estos cambios antes de desarrollar proyectos de Office destinados a las versiones de .NET Framework.De forma predeterminada, todos los proyectos que se crean mediante el destino de Visual Studio 2012 estas versiones.

Las secciones siguientes se describen estos cambios de diseño de proyecto de Office.

Introducción al diseño basado en interfaz de Microsoft Visual Studio 2010 Tools para Office Runtime

Al desarrollar un proyecto de Office destinado a .NET Framework 4 o .NET Framework 4.5, la mayoría de los tipos que se utilizan en Visual Studio 2010 Tools para Office Runtime son interfaces.Se trata de un cambio importante respecto a las versiones anteriores de Runtime de Microsoft Visual Studio Tools para Office, en las que estos tipos son clases.Por ejemplo, cuando el destino es .NET Framework 4 o .NET Framework 4.5, Worksheet y los tipos de Document son interfaces en lugar de clases.Para obtener más información, vea Información general sobre el Motor en tiempo de ejecución de Microsoft Visual Studio Tools para Office.

Para los tipos de los que se podían crear instancias directamente en las versiones anteriores del Runtime de Microsoft Visual Studio Tools para Office, ahora se usan métodos del objeto Globals.Factory para obtener instancias de estos tipos.Por ejemplo, para obtener un objeto que implemente la interfaz SmartTag, utilice el método Globals.Factory.CreateSmartTag.Para obtener más información, vea los temas siguientes:

Ee712588.collapse_all(es-es,VS.110).gifNuevas clases base en proyectos de Office

El nuevo diseño interfaz- basado de Visual Studio 2010 Tools para Office Runtime afecta a las clases generadas en los proyectos de Office, como ThisDocument, ThisWorkbook, y ThisAddIn.En proyectos de Office destinados a .NET Framework 3.5 y versiones anteriores, estas clases generadas se derivan de las clases del Runtime de Microsoft Visual Studio Tools para Office, como Microsoft.Office.Tools.Word.Document, Microsoft.Office.Tools.Excel.Worksheet y Microsoft.Office.Tools.AddIn.En proyectos destinados .NET Framework 4 o .NET Framework 4.5, estas clases de Runtime de Microsoft Visual Studio Tools para Office ahora son interfaces.Por consiguiente, las clases generadas en los proyectos de Office ya no pueden derivar su implementación de dichas clases.En su lugar, las clases generadas se derivan de nuevas clases base, como DocumentBase, WorksheetBase y AddInBase.Para obtener más información, vea Programar complementos de nivel de aplicación y Programar personalizaciones de nivel de documento.

Las clases base no forman parte del paquete redistribuible del Runtime de Microsoft Visual Studio Tools para Office.En su lugar, se definen en ensamblados de utilidades que se incluyen con Visual Studio 2012.Estos ensamblados se copian en la carpeta de salida cuando se compilan los proyectos de Office y se deben implementar junto con la solución.Para obtener más información sobre los ensamblados de utilidades, vea Ensamblados en el Motor en tiempo de ejecución de Microsoft Visual Studio Tools para Office.

Cambios importantes en los proyectos de Office que se redestinan a .NET Framework 4

La tabla siguiente se enumeran los cambios importantes principales que se pueden encontrar en los proyectos de Office que se redestinan a .NET Framework 4 o a .NET Framework 4.5.Para obtener información más detallada, vea Migrar soluciones de Office a .NET Framework 4 o .NET Framework 4.5.

Cambio importante

Consecuencia

SecurityTransparentAttribute ya no se utiliza o ya no se admite en los proyectos de Office.

Debe quitar este atributo del archivo de código AssemblyInfo en los proyectos de Office que actualice desde Visual Studio 2008.Para obtener más información, vea Cambios necesarios para ejecutar proyectos de Office migrados a .NET Framework 4 o .NET Framework 4.5.

ExcelLocale1033Attribute ya no se utiliza o ya no se admite en los proyectos de Excel.

Debe quitar este atributo del archivo de código AssemblyInfo en los proyectos de Excel.Para obtener más información, vea Actualizar proyectos de Excel y Word para migrarlos a .NET Framework 4 o .NET Framework 4.5.

Ha cambiado el modelo de programación de los elementos de proyecto Cinta (diseñador visual).

Debe modificar código- subyacente del archivo para cualquier elemento de la cinta del proyecto.También debe modificar cualquier código que cree instancias de la cinta de opciones en tiempo de ejecución, administre los eventos de ribbon, o establezca la posición de un componente de ribbon mediante programación.Para obtener más información, vea Actualizar las personalizaciones de la Cinta en los proyectos de Office migrados a .NET Framework 4 o .NET Framework 4.5.

Ha cambiado el modelo de programación de las áreas de formulario de Outlook.

Debe modificar el archivo de código subyacente de todas las áreas de formulario en el proyecto y cualquier código que cree instancias de determinadas clases de área de formulario en tiempo de ejecución.Para obtener más información, vea Actualizar las áreas del formulario en los proyectos de Outlook migrados a .NET Framework 4 o .NET Framework 4.5.

Ha cambiado el modelo de programación de las etiquetas inteligentes en Excel y Word.Las etiquetas inteligentes están desusadas en Excel 2010 y Word 2010.

Si la solución utiliza etiquetas inteligentes, aparecerán errores al compilar el proyecto.Dado que las etiquetas inteligentes están desusadas en Excel 2010 y Word 2010, quite las etiquetas antes de probar y depurar la solución en Visual Studio 2012.

Ha cambiado la sintaxis de los métodos GetVstoObject y HasVstoObject.

Se debe pasar el objeto Globals.Factory a estos métodos cuando se obtiene acceso a los mismos en objetos nativos de los ensamblados de interoperabilidad primarios (PIA), o se puede obtener acceso a estos métodos en el objeto devuelto por la propiedad Globals.Factory del proyecto.Para obtener más información, vea Actualizar proyectos de Excel y Word para migrarlos a .NET Framework 4 o .NET Framework 4.5.

Los eventos de los controles de contenido de Word están asociados a nuevos delegados.

Debe modificar cualquier código que administre los eventos de los controles de contenido de Word de modo que se especifiquen los nuevos delegados.Para obtener más información, vea Actualizar proyectos de Excel y Word para migrarlos a .NET Framework 4 o .NET Framework 4.5.

Ha cambiado el nombre de las clases OLEObject y OLEControl.

Debe modificar cualquier código que utilice instancias de estas clases de modo que use objetos Microsoft.Office.Tools.Word.ControlSite o Microsoft.Office.Tools.Excel.ControlSite.Para obtener más información, vea Actualizar proyectos de Excel y Word para migrarlos a .NET Framework 4 o .NET Framework 4.5.

Las clases de elemento host, como ThisWorkbook, Sheetn, ThisDocument, y ThisAddIn, ya no proporcionan un método de Dispose que se puede invalidar.

Debe mover cualquier código en la invalidación del método de Dispose el controlador de eventos Shutdown en la clase de elemento host, por ejemplo, ThisAddIn_Shutdown, y quita la invalidación del método de Dispose de la clase de elemento host.

Vea también

Conceptos

Migrar soluciones de Office a .NET Framework 4 o .NET Framework 4.5

Información general sobre el Motor en tiempo de ejecución de Microsoft Visual Studio Tools para Office

Otros recursos

Novedades del desarrollo de Office