다음을 통해 공유


Office 솔루션의 응용 프로그램 매니페스트(2003 시스템)

업데이트: 2007년 11월

참고

적용 대상

이 항목의 정보는 지정된 Visual Studio Tools for Office 프로젝트 및 Microsoft Office 버전에만 적용됩니다.

자세한 내용은 응용 프로그램 및 프로젝트 형식에 따라 사용 가능한 기능을 참조하십시오.

프로젝트 형식

  • 문서 수준 프로젝트

  • 응용 프로그램 수준 프로젝트

Microsoft Office 버전

  • Microsoft Office 2003

Visual Studio Tools for Office 솔루션의 응용 프로그램 매니페스트는 Microsoft Office 2003 솔루션에 로드되는 어셈블리를 설명하는 XML 파일입니다. 문서 수준 사용자 지정에서 응용 프로그램 매니페스트의 복사본 중 하나는 솔루션 문서에 포함되고 다른 하나는 솔루션을 쉽게 업데이트할 수 있도록 배포 서버에 보관됩니다. 응용 프로그램 수준 추가 기능에서 응용 프로그램 매니페스트의 복사본 중 하나는 클라이언트 컴퓨터에 저장되고 다른 하나는 솔루션을 쉽게 업데이트할 수 있도록 배포 서버에 보관됩니다. 자세한 내용은 문서 수준 사용자 지정 배포(2003 시스템)응용 프로그램 수준 추가 기능 배포(2003 시스템)를 참조하십시오.

Visual Studio Tools for Office에서는 ClickOnce에 대해 정의된 스키마와 비슷한 응용 프로그램 매니페스트 스키마를 사용합니다. Visual Studio Tools for Office 솔루션에서는 다음 표에 나열된 요소 및 특성만 지원합니다. ClickOnce 스키마의 일부이지만 여기에 나열되지 않은 모든 요소와 특성은 오류가 발생하지 않은 채 무시됩니다.

응용 프로그램 매니페스트에는 다음과 같은 요소 및 특성이 있습니다.

요소

설명

특성

<assembly> 요소(Visual Studio Tools for Office 응용 프로그램 참조)

필수적 요소. 최상위 요소.

manifestVersion

<assemblyIdentity> 요소(Visual Studio Tools for Office 참조)

필수적 요소. 응용 프로그램 매니페스트의 버전을 식별하고 종속 어셈블리를 설명합니다.

name

version

publicKeyToken

language

<entryPoint> 요소(Visual Studio Tools for Office 참조)

필수적 요소. 응용 프로그램 실행을 위한 코드 진입점을 식별합니다.

name

dependencyName

<dependency> 요소(Visual Studio Tools for Office 참조)

필수적 요소. 응용 프로그램 실행에 필요한 각 종속성을 식별합니다. 사전 설치해야 하는 어셈블리를 식별할 수도 있습니다.

name

<dependentAssembly> 요소(Visual Studio Tools for Office 참조)

필수적 요소. 종속 어셈블리에 대한 정보를 제공합니다.

없음

<installFrom> 요소(Visual Studio Tools for Office 참조)

필수적 요소. dependency 요소의 자식으로 사용된 경우에는 종속 어셈블리의 배포 위치 경로를 제공하고, assembly 요소의 자식으로 사용된 경우에는 배포 매니페스트의 위치 경로를 제공합니다.

codebase

<clrClassInvocation> 요소(Visual Studio Tools for Office 참조)

필수적 요소. entryPoint 요소에 대해 호출될 클래스를 지정합니다.

class

설명

어셈블리 경로에서 서버 이름은 모두 소문자여야 하며 그렇지 않은 경우 어셈블리가 캐싱되지 않습니다.

Visual Studio Tools for Office 프로젝트를 빌드할 때마다 응용 프로그램 매니페스트가 생성되어 문서(문서 수준 사용자 지정의 경우)에 포함되거나 빌드 출력 폴더(응용 프로그램 수준 추가 기능의 경우)에 배치됩니다. 게시 마법사를 사용하여 솔루션을 게시하면 출력 폴더에 응용 프로그램 매니페스트 복사본이 만들어진 다음 게시 대상에 복사됩니다. MSBuild의 GenerateApplicationManifest 작업이 아니라 Visual Studio Tools for Office의 GenerateAndPersistAppInfoTask 작업에서 응용 프로그램 매니페스트를 생성합니다.

응용 프로그램 매니페스트는 배포된 솔루션의 단일 버전과만 관련이 있습니다. 따라서 응용 프로그램 매니페스트는 배포 매니페스트와 별도로 저장해야 합니다. 대개는 관련 버전을 따라 이름이 부여된 하위 디렉터리에 응용 프로그램 매니페스트를 저장합니다. 자세한 내용은 문서 수준 사용자 지정 배포(2003 시스템)응용 프로그램 수준 추가 기능 배포(2003 시스템)를 참조하십시오.

Visual Studio Tools for Office 솔루션의 응용 프로그램 및 배포 매니페스트는 서명되지 않지만 ClickOnce 매니페스트는 서명됩니다. 매니페스트를 사용하기 전에 유효성을 확인할 수 없습니다.

게시 도구로 생성된 응용 프로그램 및 배포 매니페스트의 일부 필드는 Visual Studio Tools for Office 솔루션에서 사용되지 않습니다. 이러한 필드에는 크기, 버전 등의 어셈블리 속성을 나타내는 필드가 있습니다.

파일 이름 구문

응용 프로그램 매니페스트 파일의 이름은 assemblyIdentity 요소에서 식별된 응용 프로그램의 이름에 .manifest 확장명을 추가하여 만듭니다. 예를 들어, ExcelApplication1 솔루션을 나타내는 응용 프로그램 매니페스트에서는 다음과 같은 파일 이름 구문을 사용합니다.

excelapplication1.manifest

예제

다음 코드 예제에서는 Visual Studio Tools for 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>

참고 항목

작업

방법: 프로그래밍 방식으로 응용 프로그램 매니페스트 어셈블리 경로 업데이트(2003 시스템)

방법: 문서에서 관리 코드 확장 제거(2003 시스템)

개념

Office 솔루션의 응용 프로그램 및 배포 매니페스트

런타임 저장소 컨트롤 개요

참조

Office 솔루션의 배포 매니페스트(2003 시스템)