Compartir a través de


Manifiestos de aplicación para soluciones de Office (2003 System)

Actualización: noviembre 2007

Nota

Se aplica a

La información de este tema sólo se aplica a los proyectos y versiones especificados de Visual Studio Tools para Office de Microsoft Office.

Para obtener más información, vea Características disponibles por aplicación y tipo de proyecto.

Tipo de proyecto

  • Proyectos de nivel de documento

  • Proyectos de nivel de aplicación

Versión de Microsoft Office

  • Microsoft Office 2003

Un manifiesto de aplicación de una solución de Visual Studio Tools para Office es un archivo XML que describe los ensamblados cargados en una solución de Microsoft Office 2003. En las personalizaciones de nivel de documento, una copia del manifiesto de aplicación está incrustada en el documento de la solución y otra copia se guarda en el servidor de implementación, para que se pueda actualizar la solución fácilmente. En los complementos de nivel de aplicación, una copia del manifiesto de aplicación está ubicada en el equipo cliente y otra copia se guarda en el servidor de implementación, para que se pueda actualizar la solución fácilmente. Para obtener más información, vea Implementar personalizaciones de nivel de documento (2003 System) y Implementar complementos de nivel de aplicación (2003 System).

Visual Studio Tools para Office utiliza un esquema del manifiesto de aplicación similar al esquema definido para ClickOnce. Sólo los elementos y atributos que se muestran en esta tabla son compatibles con soluciones de Visual Studio Tools para Office. Se omite, sin provocar ningún error, todo elemento y atributo que forme parte del esquema de ClickOnce que no se muestre a continuación.

Los manifiestos de aplicación presentan los elementos y atributos siguientes.

Elemento

Descripción

Atributos

Elemento <assembly> (Referencia de aplicación de Visual Studio Tools para Office)

Necesario. Elemento de nivel superior.

manifestVersion

Elemento <assemblyIdentity> (Referencia de Visual Studio Tools para Office)

Necesario. Identifica la versión del manifiesto de aplicación y describe los ensamblados dependientes.

name

version

publicKeyToken

language

Elemento <entryPoint> (Referencia de Visual Studio Tools para Office)

Necesario. Identifica el punto de entrada del código de aplicación para la ejecución.

name

dependencyName

Elemento <dependency> (Referencia de Visual Studio Tools para Office)

Necesario. Identifica cada dependencia necesaria para que se ejecute la aplicación. Identifica opcionalmente ensamblados que necesitan preinstalarse.

name

Elemento <dependentAssembly> (Referencia de Visual Studio Tools para Office)

Necesario. Proporciona información sobre ensamblados dependientes.

Ninguno

Elemento <installFrom> (Referencia de Visual Studio Tools para Office)

Necesario. Proporciona una ruta de acceso a la ubicación de implementación de ensamblados dependientes cuando se utiliza como elemento secundario de un elemento dependency, y una ruta de acceso a la ubicación del manifiesto de implementación cuando se utiliza como elemento secundario del elemento assembly.

codebase

Elemento <clrClassInvocation> (Referencia de Visual Studio Tools para Office)

Necesario. Indica la clase que se va a invocar para un elemento entryPoint.

class

Comentarios

El nombre del servidor en la ruta de acceso a los ensamblados debe estar en minúscula o, de lo contrario, los ensamblados no se almacenarán en memoria caché.

Cada vez que se crea un proyecto de Visual Studio Tools para Office, se genera un manifiesto de aplicación que se incrusta en el documento (para personalizaciones de nivel de documento) o se coloca en la carpeta de resultados de la versión (para complementos de nivel de aplicación). Cuando se publica una solución mediante el Asistente para publicación, también se crea una copia del manifiesto de aplicación en la carpeta de resultados y, a continuación, se copia en el destino de publicación. La tarea GenerateAndPersistAppInfoTask de Visual Studio Tools para Office genera el manifiesto de aplicación, no la tarea GenerateApplicationManifest de MSBuild.

Cada manifiesto de aplicación es específico para una única versión de la solución implementada. Por esta razón, los manifiestos de aplicación se deben almacenar de forma independiente con respecto a los manifiestos de implementación. La convención común consiste en colocar el manifiesto de aplicación en un subdirectorio con el nombre de la versión asociada. Para obtener más información, vea Implementar personalizaciones de nivel de documento (2003 System) y Implementar complementos de nivel de aplicación (2003 System).

Los manifiestos de aplicación e implementación de las soluciones de Visual Studio Tools para Office no están firmados, pero sí lo están los manifiestos de ClickOnce. No se pueden validar los manifiestos antes de utilizarse.

Algunos campos de los manifiestos de aplicación e implementación que generan las herramientas de publicación no se utilizan en las soluciones de Visual Studio Tools para Office, incluidos aquellos que identifican propiedades del ensamblado, como el tamaño y la versión.

Sintaxis de los nombres de archivo

El nombre de un archivo de manifiesto de aplicación debe ser el nombre de la aplicación tal y como se identifica en el elemento assemblyIdentity, seguido de la extensión .manifest. Por ejemplo, un manifiesto de aplicación que hace referencia a la solución ExcelApplication1 utilizaría la sintaxis de nombre de archivo siguiente.

excelapplication1.manifest

Ejemplo

En el ejemplo de código siguiente se muestra un manifiesto de aplicación para una solución de Visual Studio Tools para Office.

<?xml version="1.0" encoding="utf-8"?>
<assembly manifestVersion="1.0" 
    xmlns:asmv2="urn:schemas-microsoft-com:asm.v2"
    xmlns="urn:schemas-microsoft-com:asm.v1"
    xmlns:asm.v2="urn:schemas-microsoft-com:asm.v2"
    xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation=
       "urn:schemas-microsoft-com:asm.v1 manifest.2.0.0.9.adaptive.xsd"
>

    <assemblyIdentity name="Project1.manifest" 
        version="1.0.1.1"/>
    <asm.v2:entryPoint name="Startup" dependencyName="Project1">
        <asm.v2:clrClassInvocation class="Sheet1"/>
    </asm.v2:entryPoint>
    <asm.v2:entryPoint name="Startup" dependencyName="Project1">
        <asm.v2:clrClassInvocation class="Sheet2"/>
    </asm.v2:entryPoint>
    <asm.v2:entryPoint name="Startup" dependencyName="Project1">
        <asm.v2:clrClassInvocation class="Sheet3"/>
    </asm.v2:entryPoint>
    <dependency asmv2:name="Project1">
        <dependentAssembly>
            <assemblyIdentity name="Project1" 
                version="1.0.1.1"/>
        </dependentAssembly>
        <asmv2:installFrom codebase=
            "http://deployweb/project1/project1_1.0.1.1/project1.dll"/>
    </dependency>
    <asm.v2:installFrom codebase=
        "http://deployweb/project1/project1.application"/>
</assembly>

Vea también

Tareas

Cómo: Actualizar rutas de acceso a ensamblados de manifiestos de aplicaciones mediante programación (2003 System)

Cómo: Quitar extensiones de código administrado de documentos (2003 System)

Conceptos

Manifiestos de implementación y aplicación en soluciones de Office

Información general acerca del control de almacenamiento del motor en tiempo de ejecución

Referencia

Manifiestos de implementación para soluciones de Office (2003 System)