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

Para ejecutar soluciones creadas con las herramientas para desarrolladores de Microsoft Office en Visual Studio 2010, Visual Studio 2010 Tools para Office Runtime debe estar instalado en los equipos de usuarios finales. Visual Studio 2010 Tools para Office Runtime consta de dos componentes principales:

  • Las extensiones de Office para .NET Framework. Estos componentes son ensamblados administrados que proporcionan la capa de comunicación entre la solución y la aplicación de Microsoft Office. Para obtener más información, vea Introducción a las extensiones de Office para .NET Framework.

  • El cargador de solución de Office. Este componente es un conjunto de DLL no administradas que las aplicaciones de Office usan para cargar el runtime y las soluciones. Para obtener más información, vea Introducción al cargador de solución de Office.

El runtime se puede instalar de varias maneras diferentes. Dependiendo de la configuración del equipo, se instalan distintos componentes en tiempo de ejecución al instalar el runtime. Para obtener más información, vea Escenarios de instalación del Motor en tiempo de ejecución de Microsoft Visual Studio Tools para Office.

Introducción a las extensiones de Office para .NET Framework

Visual Studio 2010 Tools para Office Runtime incluye dos extensiones de Office para .NET Framework:

  • Las extensiones de Office para .NET Framework 3.5 las usan las soluciones destinadas a .NET Framework 3.5.

  • Las extensiones de Office para .NET Framework 4 las usan las soluciones destinadas a .NET Framework 4.

Estas extensiones están formadas por ensamblados que las soluciones usan para automatizar y extender las aplicaciones de Office. Al crear un proyecto de Office, Visual Studio agrega automáticamente las referencias a los ensamblados correspondientes al tipo de proyecto y la versión de .NET Framework de destino del proyecto. Para obtener más información sobre los ensamblados en las extensiones de Office, vea Ensamblados en el Motor en tiempo de ejecución de Microsoft Visual Studio Tools para Office.

Diferencias de diseño en las extensiones de Office

La mayoría de los tipos que utiliza en las extensiones de Office para .NET Framework 3.5 son clases. Son las mismas clases que se incluían en las versiones anteriores de Motor en tiempo de ejecución de Microsoft Visual Studio Tools para Office. En cambio, la mayoría de los tipos que se utilizan en las extensiones de Office para .NET Framework 4 son interfaces. Por ejemplo, cuando el destino es .NET Framework 4, los tipos Microsoft.Office.Tools.Word.Document y Microsoft.Office.Tools.Excel.Worksheet son interfaces en lugar de clases.

En la mayoría de los casos, el código que se escribe en las soluciones de Office es el mismo con independencia de si la versión de destino de la solución es .NET Framework 3.5 o .NET Framework 4. Sin embargo, ciertas características requieren código diferente para cada versión de .NET Framework. Para obtener más información, vea Migrar soluciones de Office a .NET Framework 4.

Interfaces de las extensiones de Office para .NET Framework 4

La mayoría de las interfaces de las extensiones de Office para .NET Framework 4 no están previstas para que las implemente el código de usuario. Las únicas interfaces que puede implementar directamente tienen nombres que comienzan por la letra I, como ISmartTagExtension.

Visual Studio 2010 Tools para Office Runtime implementa internamente todas las interfaces que no comienzan por la letra I y estas interfaces pueden cambiar en futuras versiones. Para crear objetos que implementan estas interfaces, utilice métodos proporcionados por el objeto Globals.Factory en su proyecto. Por ejemplo, para obtener un objeto que implemente la interfaz SmartTag, utilice el método Globals.Factory.CreateSmartTag. Para obtener más información sobre Globals.Factory, vea Acceso global a objetos en los proyectos de Office.

Habilitar la equivalencia de tipos y tipos incrustados en proyectos destinados a .NET Framework 4

El modelo de objetos basado en interfaz de las extensiones de Office para .NET Framework 4 permite utilizar la característica de equivalencia de tipos en Visual C# 2010 y Visual Basic 2010 para incrustar información de tipo de Motor en tiempo de ejecución de Microsoft Visual Studio Tools para Office en la solución. Esta característica permite que las soluciones de Office no dependan de la versión de Motor en tiempo de ejecución de Microsoft Visual Studio Tools para Office utilizada. Por ejemplo, si su solución utiliza la interfaz Microsoft.Office.Tools.Word.Document como tipo incrustado y la versión siguiente del runtime agrega miembros a la interfaz Microsoft.Office.Tools.Word.Document, la solución seguirá funcionando con la versión siguiente del runtime. Si la solución no utiliza la interfaz Microsoft.Office.Tools.Word.Document como tipo incrustado, entonces la solución ya no funcionará con la versión siguiente del runtime.

De forma predeterminada, la característica de equivalencia de tipos no está habilitada al crear un proyecto de Office destinado a .NET Framework 4. Si desea habilitar esta característica, establezca la propiedad Incrustar tipos de interoperabilidad de cualquiera de las siguientes referencias de ensamblado del proyecto en True:

  • Microsoft.Office.Tools.dll

  • Microsoft.Office.Tools.Common.dll

  • Microsoft.Office.Tools.Excel.dll

  • Microsoft.Office.Tools.Outlook.dll

  • Microsoft.Office.Tools.Word.dll

Después de realizar esta modificación, la información de tipo para todos los tipos en tiempo de ejecución utilizados por el proyecto se incrusta en el ensamblado de la solución al compilar el proyecto. La solución utiliza esta información de tipo incrustada en tiempo de ejecución, en lugar de la información de tipo de los ensamblados a los que se hace referencia.

Introducción al cargador de solución de Office

El runtime de Visual Studio Tools para Office incluye varias DLL no administradas que las aplicaciones de Office usan para cargar el runtime y las soluciones de Office. Aunque nunca debería tener que trabajar directamente con estas DLL, conocer su finalidad puede ayudarle a entender mejor la arquitectura de las soluciones de Office.

Para obtener información sobre cómo se utilizan estos componentes durante el proceso de carga, vea Arquitectura de las personalizaciones de nivel de documento y Arquitectura de los complementos de nivel de aplicación.

VSTOEE.dll

Cuando un usuario abre una personalización de nivel de documento o inicia un complemento, la aplicación de Office llama a VSTOEE.dll para realizar las tareas necesarias para cargar Motor en tiempo de ejecución de Microsoft Visual Studio Tools para Office.

VSTOEE.dll se asegura de que se carga la versión correcta de Motor en tiempo de ejecución de Microsoft Visual Studio Tools para Office para la solución y la versión instalada de Office. Si bien en el equipo se pueden instalar varias versiones de Motor en tiempo de ejecución de Microsoft Visual Studio Tools para Office, no se instala más de una instancia de VSTOEE.dll a la vez. Esta versión corresponde al archivo VSTOEE.dll incluido con la última versión del motor en tiempo de ejecución instalado en el equipo. Para obtener más información sobre las distintas versiones de Motor en tiempo de ejecución de Microsoft Visual Studio Tools para Office que se pueden usar para otras soluciones, vea Ejecutar soluciones en diferentes versiones de Microsoft Office.

VSTOLoader.dll

Después de que VSTOEE.dll carga la versión adecuada de Motor en tiempo de ejecución de Microsoft Visual Studio Tools para Office, VSTOLoader.dll realiza la mayoría del trabajo necesario para cargar el ensamblado de la solución. VSTOLoader.dll realiza varias acciones:

  • Crea un dominio de aplicación para cada ensamblado de solución.

  • Realiza un conjunto de comprobaciones de seguridad para comprobar que el ensamblado de solución tiene permiso para ejecutarse.

  • Carga la versión de las extensiones de Office para .NET Framework que requiere la solución.

VSTOLoader.dll también realiza varias tareas específicas de los complementos:

  • Implementa la interfaz IDTExtensibility2. IDTExtensibility2 es una interfaz COM que deben implementar todos los complementos para aplicaciones de Microsoft Office. Esta interfaz define métodos a los que la aplicación llama para comunicar con el complemento.

  • Implementa la interfaz IManagedAddin. Las aplicaciones de Office usan esta interfaz para ayudar a cargar los complementos de nivel de aplicación. Para obtener más información, vea Interfaz IManagedAddin.

Introducción a las versiones de 32 bits y de 64 bits del runtime

Hay versiones independientes de 32 bits y 64 bits de Visual Studio 2010 Tools para Office Runtime. Estas versiones del runtime se utilizan para ejecutar soluciones en ediciones de 64 bits y de 32 bits de Microsoft Office 2010. La tabla siguiente muestra qué versión del runtime es necesaria para cada combinación de Microsoft Windows y Microsoft Office 2010.

Edición de Microsoft Windows

Edición de Microsoft Office

Versión obligatoria de Motor en tiempo de ejecución de Microsoft Visual Studio Tools para Office

32 bits

32 bits

32 bits

64 bits

32 bits

64 bits

64 bits

64 bits

64 bits

Al instalar Microsoft Office 2010, junto con Office se instala la versión necesaria de Motor en tiempo de ejecución de Microsoft Visual Studio Tools para Office. Por ejemplo, al instalar la edición de 64 bits de Microsoft Office 2010 en una versión de 64 bits de Microsoft Windows, también se instala la versión de 64 bits de Motor en tiempo de ejecución de Microsoft Visual Studio Tools para Office. Para obtener más información sobre la instalación de Motor en tiempo de ejecución de Microsoft Visual Studio Tools para Office con Microsoft Office 2010, vea Escenarios de instalación del Motor en tiempo de ejecución de Microsoft Visual Studio Tools para Office.

La versión de 64 bits de Microsoft Office 2010 también puede ejecutar soluciones de Office creadas con plantillas de proyecto para 2007 Microsoft Office system en Visual Studio 2008. Sin embargo, no puede ejecutar soluciones de Office creadas con plantillas de proyecto para Microsoft Office 2003 en Visual Studio 2008 o soluciones de Office creadas con Visual Studio 2005. Para obtener más información, vea Ejecutar soluciones en diferentes versiones de Microsoft Office.

Reparar Visual Studio 2010 Tools para Office Runtime

Si necesita reparar el runtime, abra Programas y características o Agregar o quitar programas en el Panel de control, seleccione Microsoft Visual Studio 2010 Tools para Office Runtime en la lista de programas y, a continuación, haga clic en Desinstalar. El programa de instalación que se ejecuta permite reparar el runtime. Si hace clic en Cambiar, no tendrá la opción de reparar el runtime.

Vea también

Tareas

Cómo: Crear proyectos de Office en Visual Studio

Conceptos

Arquitectura de las personalizaciones de nivel de documento

Arquitectura de los complementos de nivel de aplicación

Otros recursos

Escenarios de instalación del Motor en tiempo de ejecución de Microsoft Visual Studio Tools para Office

Ensamblados en el Motor en tiempo de ejecución de Microsoft Visual Studio Tools para Office

Arquitectura de las soluciones de Office en Visual Studio

Actualizar y migrar soluciones de Office