GenerateApplicationManifest タスクGenerateApplicationManifest Task

ClickOnceClickOnce アプリケーション マニフェストまたはネイティブ マニフェストを生成します。Generates a ClickOnceClickOnce application manifest or a native manifest. ネイティブ マニフェストでは、コンポーネントの一意の ID を定義し、コンポーネントを構成するアセンブリおよびファイルを指定することによって、コンポーネントを記述します。A native manifest describes a component by defining a unique identity for the component and identifying all assemblies and files that make up the component. ClickOnceClickOnce アプリケーション マニフェストはネイティブ マニフェストを拡張するもので、アプリケーションのエントリ ポイントとセキュリティ レベルを指定します。A ClickOnceClickOnce application manifest extends a native manifest by indicating the entry point of the application, and specifying the application security level.

パラメーターParameters

GenerateApplicationManifest タスクのパラメーターの説明を次の表に示します。The following table describes the parameters for the GenerateApplicationManifest task.

パラメーターParameter 説明Description
AssemblyName 省略可能な String 型のパラメーターです。Optional String parameter.

生成されるマニフェストのアセンブリ ID の Name フィールドを指定します。Specifies the Name field of the assembly identity for the generated manifest. このパラメーターを指定しない場合、名前は EntryPoint パラメーターまたは InputManifest パラメーターから推測されます。If this parameter is not specified, the name is inferred from the EntryPoint or InputManifest parameters. 名前を作成できない場合、タスクはエラーをスローします。If no name can be created, the task throws an error.
AssemblyVersion 省略可能な String 型のパラメーターです。Optional String parameter.

生成されるマニフェストのアセンブリ ID の Version フィールドを指定します。Specifies the Version field of the assembly identity for the generated manifest. このパラメーターを指定しない場合は、既定値の "1.0.0.0" が使用されます。If this parameter is not specified, a default value of "1.0.0.0" is used.
ClrVersion 省略可能な String 型のパラメーターです。Optional String parameter.

アプリケーションで必要な共通言語ランタイム (CLR: Common Language Runtime) の最低限のバージョンを指定します。Specifies the minimum version of the Common Language Runtime (CLR) required by the application. 既定値は、ビルド システムで使用されている CLR のバージョンです。The default value is the CLR version in use by the build system. タスクがネイティブ マニフェストを生成する場合には、このパラメーターは無視されます。If the task is generating a native manifest, this parameter is ignored.
ConfigFile 省略可能な ITaskItem[] 型のパラメーターです。Optional ITaskItem[] parameter.

アプリケーション構成ファイルがどのアイテムに含まれているのかを指定します。Specifies which item contains the application configuration file. タスクがネイティブ マニフェストを生成する場合には、このパラメーターは無視されます。If the task is generating a native manifest, this parameter is ignored.
Dependencies 省略可能な ITaskItem[] 型のパラメーターです。Optional ITaskItem[] parameter.

作成するマニフェストが依存する一連のアセンブリを定義したアイテム一覧を指定します。Specifies an item list that defines the set of dependent assemblies for the generated manifest. 配置状態に関するその他の情報や依存関係の種類を示したアイテム メタデータを添えると、各アイテムを詳細に記述できます。Each item may be further described by item metadata to indicate additional deployment state and the type of dependence. 詳細については、後述する「アイテム メタデータ」を参照してください。For more information, see the "Item Metadata" section below.
Description 省略可能な String 型のパラメーターです。Optional String parameter.

アプリケーションまたはコンポーネントの説明を記述します。Specifies the description for the application or component.
EntryPoint 省略可能な ITaskItem[] 型のパラメーターです。Optional ITaskItem[] parameter.

作成されるマニフェスト アセンブリのエントリ ポイントを示すアイテムを 1 つ指定します。Specifies a single item that indicates the entry point for the generated manifest assembly.

ClickOnceClickOnce アプリケーション マニフェストの場合、このパラメーターには、アプリケーションの実行時に起動されるアセンブリを指定します。For a ClickOnceClickOnce application manifest, this parameter specifies the assembly that starts when the application is run.
ErrorReportUrl 省略可能な System.String 型のパラメーターです。Optional System.String parameter.

ClickOnce インストールのエラー報告時にダイアログ ボックスに表示される Web ページの URL を指定します。Specifies the URL of the Web page that is displayed in dialog boxes during error reports in ClickOnce installations.
FileAssociations 省略可能な ITaskItem[] 型のパラメーターです。Optional ITaskItem[] parameter.

ClickOnce の配置マニフェストに関連付けられている 1 つまたは複数のファイルの種類のリストを指定します。Specifies a list of one or more file type that are associated with the ClickOnce deployment manifest.

ファイルの関連付けは、.NET Framework 3.5 以降が対象となっている場合にのみ有効です。File associations only valid only when .NET Framework 3.5 or later is targeted.
Files 省略可能な ITaskItem[] 型のパラメーターです。Optional ITaskItem[] parameter.

マニフェストに含めるファイルです。The files to include in the manifest. 各ファイルの完全パスを指定します。Specify the full path for each file.
HostInBrowser 省略可能な Boolean 型のパラメーターです。Optional Boolean parameter.

true の場合、WPF Web ブラウザー アプリケーションのように、アプリケーションがブラウザーでホストされます。If true, the application is hosted in a browser (as are WPF Web Browser Applications).
IconFile 省略可能な ITaskItem[] 型のパラメーターです。Optional ITaskItem[] parameter.

アプリケーション アイコンのファイルを示します。Indicates the application icon file. アプリケーション アイコンは、作成されるアプリケーション マニフェストに記述され、[スタート] メニューおよび [プログラムの追加と削除] ダイアログ ボックスで使用されます。The application icon is expressed in the generated application manifest and is used for the Start Menu and Add/Remove Programs dialog. 指定しなかった場合には、既定のアイコンが使用されます。If this input is not specified, a default icon is used. タスクがネイティブ マニフェストを生成する場合には、このパラメーターは無視されます。If the task is generating a native manifest, this parameter is ignored.
InputManifest 省略可能な ITaskItem 型のパラメーターです。Optional ITaskItem parameter.

マニフェスト ジェネレーターのベースとして使用する、入力 XML ドキュメントを指定します。Indicates an input XML document to serve as a base for the manifest generator. これによって、アプリケーション セキュリティまたはカスタム マニフェスト定義など、構造化されたデータが出力マニフェストに反映されます。This allows structured data such as application security or custom manifest definitions to be reflected in the output manifest. XML ドキュメントのルート要素は、asmv1 名前空間内のアセンブリ ノードである必要があります。The root element in the XML document must be an assembly node in the asmv1 namespace.
IsolatedComReferences 省略可能な ITaskItem[] 型のパラメーターです。Optional ITaskItem[] parameter.

作成されるマニフェスト内で分離する COM コンポーネントを指定します。Specifies COM components to isolate in the generated manifest. このパラメーターを使用すると、"登録を必要としない COM" の配置用に COM コンポーネントを分離できます。This parameter supports the ability to isolate COM components for "Registration Free COM" deployment. この機能は、標準の COM 登録の定義を使用してマニフェストを自動作成することによって実現されています。It works by auto-generating a manifest with standard COM registration definitions. ただし、正しく動作するためには、ビルド処理を行っているコンピューターに、対象の COM コンポーネントが登録されている必要があります。However, the COM components must be registered on the build machine in order for this to function properly.
ManifestType 省略可能な String 型のパラメーターです。Optional String parameter.

作成するマニフェストの種類を指定します。Specifies which type of manifest to generate. このパラメーターには、次の値を指定できます。This parameter can have the following values:

- Native
- ClickOnce

このパラメーターが指定されていない場合は、既定の ClickOnce が使用されます。If this parameter is not specified, the task defaults to ClickOnce.
MaxTargetPath 省略可能な String 型のパラメーターです。Optional String parameter.

ClickOnceClickOnceによるアプリケーション配置におけるファイル パスの最大長を指定します。Specifies the maximum allowable length of a file path in a ClickOnceClickOnce application deployment. この値を指定すると、アプリケーション内の各ファイル パスの長さが、この制限に照らし合わせてチェックされます。If this value is specified, the length of each file path in the application is checked against this limit. この制限を超える項目に対しては、ビルド警告が出力されます。Any items that exceed the limit will raise in a build warning. この値を指定しないか、ゼロを指定した場合、チェック処理は行われません。If this input is not specified or is zero, then no checking is performed. タスクがネイティブ マニフェストを生成する場合には、このパラメーターは無視されます。If the task is generating a native manifest, this parameter is ignored.
OSVersion 省略可能な String 型のパラメーターです。Optional String parameter.

アプリケーションで必要なオペレーティング システム (OS) の最低限のバージョンを指定します。Specifies the minimum required operating system (OS) version required by the application. たとえば、"5.1.2600.0" という値は、オペレーティング システムが Windows XP であることを示しています。For example, the value "5.1.2600.0" indicates the operating system is Windows XP. このパラメーターを指定しなかった場合には、.NET Framework. でサポートされている最低限の OS である Windows 98 Second Edition を示す "4.10.0.0" が使用されます。If this parameter is not specified, the value "4.10.0.0" is used, which indicates Windows 98 Second Edition, the minimum supported OS of the .NET Framework. タスクがネイティブ マニフェストを生成する場合には、この入力は無視されます。If the task is generating a native manifest, this input is ignored.
OutputManifest 省略可能な ITaskItem 型の出力パラメーターです。Optional ITaskItem output parameter.

生成される出力マニフェスト ファイルの名前を指定します。Specifies the name of the generated output manifest file. このパラメーターが指定されていない場合、出力ファイルの名前は、生成されるマニフェストの ID から推測されます。If this parameter is not specified, the name of the output file is inferred from the identity of the generated manifest.
Platform 省略可能な String 型のパラメーターです。Optional String parameter.

アプリケーションの対象プラットフォームを指定します。Specifies the target platform of the application. このパラメーターには、次の値を指定できます。This parameter can have the following values:

- AnyCPU
- x86
- x64
- Itanium

このパラメーターが指定されていない場合は、既定の AnyCPU が使用されます。If this parameter is not specified, the task defaults to AnyCPU.
Product 省略可能な String 型のパラメーターです。Optional String parameter.

アプリケーション名を示します。Specifies the name of the application. このパラメーターが指定されていない場合、名前は、生成されるマニフェストの ID から推測されます。If this parameter is not specified, the name is inferred from the identity of the generated manifest. この名前は、[スタート] メニューに表示する名前として使用され、[プログラムの追加と削除] ダイアログ ボックスに表示される名前の一部としても使用されます。This name is used for the shortcut name on the Start menu and is part of the name that appears in the Add or Remove Programs dialog box.
Publisher 省略可能な String 型のパラメーターです。Optional String parameter.

アプリケーションの発行者を指定します。Specifies the publisher of the application. このパラメーターが指定されていない場合、名前は、登録されているユーザー名または生成されるマニフェストの ID から推測されます。If this parameter is not specified, the name is inferred from the registered user, or the identity of the generated manifest. この名前は、[スタート] メニューに表示するフォルダー名として使用され、[プログラムの追加と削除] ダイアログ ボックスに表示される名前の一部としても使用されます。This name is used for the folder name on the Start menu and is part of the name that appears in the Add or Remove Programs dialog box.
RequiresMinimumFramework35SP1 省略可能な Boolean 型のパラメーターです。Optional Boolean parameter.

true の場合、アプリケーションでは .NET Framework 3.5 SP1 またはそれ以降のバージョンが必要です。If true, the application requires the .NET Framework 3.5 SP1 or a more recent version.
TargetCulture 省略可能な String 型のパラメーターです。Optional String parameter.

アプリケーションのカルチャを示し、生成されるマニフェストのアセンブリ ID の Language フィールドを指定します。Identifies the culture of the application and specifies the Language field of the assembly identity for the generated manifest. このパラメーターを指定しなかった場合、アプリケーションは、カルチャに依存しないと仮定されます。If this parameter is not specified, it is assumed the application is culture invariant.
TargetFrameworkMoniker 省略可能な String 型のパラメーターです。Optional String parameter.

ターゲット フレームワーク モニカーを指定します。Specifies the target framework moniker.
TargetFrameworkProfile 省略可能な String 型のパラメーターです。Optional String parameter.

ターゲット フレームワーク プロファイルを指定します。Specifies the target framework profile.
TargetFrameworkSubset 省略可能な String 型のパラメーターです。Optional String parameter.

対象となる .NET Framework のサブセットの名前を指定します。Specifies the name of the .NET Framework subset to target.
TargetFrameworkVersion 省略可能な String 型のパラメーターです。Optional String parameter.

プロジェクトの対象の .NET Framework を指定します。Specifies the target .NET Framework of the project.
TrustInfoFile 省略可能な ITaskItem 型のパラメーターです。Optional ITaskItem parameter.

アプリケーションのセキュリティを指定する XML ドキュメントを示します。Indicates an XML document that specifies the application security. XML ドキュメントのルート要素は、asmv2 名前空間内の trustInfo ノードである必要があります。The root element in the XML document must be a trustInfo node in the asmv2 namespace. タスクがネイティブ マニフェストを生成する場合には、このパラメーターは無視されます。If the task is generating a native manifest, this parameter is ignored.
UseApplicationTrust 省略可能な Boolean 型のパラメーターです。Optional Boolean parameter.

true の場合、ProductPublisher、および SupportUrl の各プロパティがアプリケーション マニフェストに書き込まれます。If true, the Product, Publisher, and SupportUrl properties are written to the application manifest.

コメントRemarks

上記のパラメーター以外に、このタスクは GenerateManifestBase クラスからパラメーターを継承します。このクラス自体は、Task クラスから継承されます。In addition to the parameters listed above, this task inherits parameters from the GenerateManifestBase class, which itself inherits from the Task class. Task クラスのパラメーターの一覧については、「Task Base Class」 を参照してください。For a list of the parameters of the Task class, see Task Base Class.

GenerateDeploymentManifest タスクの使用方法については、「GenerateApplicationManifest タスク」を参照してください。For information about how to use the GenerateDeploymentManifest task, see GenerateApplicationManifest Task.

各アイテムの配置状態に関するその他の情報を記述したアイテム メタデータを指定すると、依存関係やファイルについての情報をさらに詳細に入力することができます。The inputs for dependencies and files may be further decorated with item metadata to specify additional deployment state for each item.

アイテム メタデータItem Metadata

メタデータ名Metadata name 説明Description
DependencyType 依存関係をアプリケーションと一緒に発行およびインストールするのか、依存関係があらかじめ必要であるのかを示します。Indicates whether the dependency is published and installed with the application or a prerequisite. このメタデータは、すべての依存関係に対して有効ですが、ファイルには適用されません。This metadata is valid for all dependencies, but is not used for files. このメタデータで使用できる値は次のとおりです。The available values for this metadata are:

- Install
- Prerequisite

既定値は Install です。Install is the default value.
AssemblyType 依存関係が、マネージ アセンブリであるのかネイティブ アセンブリであるのかを示します。Indicates whether the dependency is a managed or a native assembly. このメタデータは、すべての依存関係に対して有効ですが、ファイルには適用されません。This metadata is valid for all dependencies, but is not used for files. このメタデータで使用できる値は次のとおりです。The available values for this metadata are:

- Managed
- Native
- Unspecified

既定値は Unspecified です。この値は、このタスクで自動的にアセンブリの種類を判断することを意味します。Unspecified is the default value, which indicates that the manifest generator will determine the assembly type automatically.
Group 必要に応じてダウンロードする追加のファイルのグループを示します。Indicates the group for downloading additional files on-demand. グループ名は、任意の文字列を、アプリケーションで定義します。The group name is defined by the application and can be any string. 空の文字列 (既定) の場合は、ファイルがダウンロード グループに属していないことを示します。An empty string indicates the file is not part of a download group, which is the default. グループに属していないファイルは、アプリケーションの初期ダウンロードの対象になります。Files not in a group are part of the initial application download. グループに属しているファイルの場合は、System.Deployment.Application を使用してアプリケーションから明示的に要求された場合にだけダウンロードされます。Files in a group are only downloaded when explicitly requested by the application using System.Deployment.Application.

このメタデータは、IsDataFilefalse が設定されているすべてのファイル、および、DependencyTypeInstall が設定されているすべての依存関係に対して有効です。This metadata is valid for all files where IsDataFile is false and all dependencies where DependencyType is Install.
TargetPath 作成されるマニフェストで、パスを定義する方法を指定します。Specifies how the path should be defined in the generated manifest. この属性はすべてのファイルに対して有効です。This attribute is valid for all files. この属性を指定しなかった場合には、アイテムの規定に従います。If this attribute is not specified, the item specification is used. この属性は、DependencyTypeInstall が設定されているすべてのファイルおよび依存関係に対して有効です。This attribute is valid for all files and dependencies with a DependencyType value of Install.
IsDataFile ファイルがデータ ファイルであるかどうかを示す Boolean 型のメタデータ値です。A Boolean metadata value that indicates whether or not the file is a data file. データ ファイルは、アプリケーションを更新したときに移行されるため、特別な扱いが必要です。A data file is special in that it is migrated between application updates. このメタデータはファイルに対してのみ有効です。This metadata is only valid for files. 既定値は False です。False is the default value.

Example

次の例では、GenerateApplicationManifest タスクを使用して ClickOnceClickOnce アプリケーション マニフェストを作成し、GenerateDeploymentManifest タスクを使用して、アセンブリ 1 つで構成されているアプリケーション用の配置マニフェストを作成します。This example uses the GenerateApplicationManifest task to generate a ClickOnceClickOnce application manifest and the GenerateDeploymentManifest task to generate a deployment manifest for an application with a single assembly. 次に、SignFile タスクを使用して、マニフェストに署名しています。It then uses the SignFile task to sign the manifests.

これは、1 つのプログラム用に ClickOnceClickOnce マニフェストを作成するものであり、マニフェストを作成するための最も簡単な例を示しています。This illustrates the simplest possible manifest generation scenario where ClickOnceClickOnce manifests are generated for a single program. 既定の名前および ID は、マニフェストのアセンブリ名から決定されています。A default name and identity are inferred from the assembly for the manifest.

注意

次の例では、マニフェストの作成処理に着目するために、アプリケーションのバイナリはすべてビルド済みであると仮定してあります。In the example below, all application binaries are pre-built in order to focus on manifest generation aspects. この例では、完全に実用的な ClickOnceClickOnce 配置が作成されます。This example produces a fully working ClickOnceClickOnce deployment.

注意

この例の Thumbprint タスクで使用されている SignFile プロパティの詳細については、「SignFile タスク」を参照してください。For more information on the Thumbprint property used in the SignFile task in this example, see SignFile Task.

<Project DefaultTargets="Build"  
    xmlns="http://schemas.microsoft.com/developer/msbuild/2003">  

    <ItemGroup>  
        <EntryPoint Include="SimpleWinApp.exe" />  
    </ItemGroup>  

    <PropertyGroup>  
        <Thumbprint>  
             <!-- Insert generated thumbprint here -->  
        </Thumbprint>  
    </PropertyGroup>  

    <Target Name="Build">  

        <GenerateApplicationManifest  
            EntryPoint="@(EntryPoint)">  
            <Output  
                ItemName="ApplicationManifest"  
                TaskParameter="OutputManifest"/>  
        </GenerateApplicationManifest>  

        <GenerateDeploymentManifest  
            EntryPoint="@(ApplicationManifest)">  
            <Output  
                ItemName="DeployManifest"  
                TaskParameter="OutputManifest"/>  
        </GenerateDeploymentManifest>  

        <SignFile  
            CertificateThumbprint="$(Thumbprint)"  
            SigningTarget="@(ApplicationManifest)"/>  

        <SignFile  
            CertificateThumbprint="$(Thumbprint)"  
            SigningTarget="@(DeployManifest)"/>  

    </Target>  
</Project>  

Example

次の例では、GenerateApplicationManifest タスクおよび GenerateDeploymentManifest タスクを使用して、ClickOnceClickOnce アプリケーション マニフェストおよび配置マニフェストを単独のアセンブリで作成しています。このとき、マニフェストの名前と ID を指定しています。This example uses the GenerateApplicationManifest and GenerateDeploymentManifest tasks to generate ClickOnceClickOnce application and deployment manifests for an application with a single assembly, specifying name and identity of manifests.

この例は、マニフェストの名前と ID を明示的に指定している点を除けば、前の例に似ています。This example is similar to previous example except the name and identity of the manifests are explicitly specified. また、この例は、インストール アプリケーションではなく、オンライン アプリケーションとして構成されています。Also, this example is configured as an online application instead of an installed application.

注意

次の例では、マニフェストの作成処理に着目するために、アプリケーションのバイナリはすべてビルド済みであると仮定してあります。In the example below, all application binaries are pre-built in order to focus on manifest generation aspects. この例では、完全に実用的な ClickOnceClickOnce 配置が作成されます。This example produces a fully working ClickOnceClickOnce deployment.

注意

この例の Thumbprint タスクで使用されている SignFile プロパティの詳細については、「SignFile タスク」を参照してください。For more information on the Thumbprint property used in the SignFile task in this example, see SignFile Task.

<Project DefaultTargets="Build"  
    xmlns="http://schemas.microsoft.com/developer/msbuild/2003">  

    <ItemGroup>  
        <EntryPoint Include="SimpleWinApp.exe" />  
    </ItemGroup>  

    <PropertyGroup>  
        <Thumbprint>  
             <!-- Insert generated thumbprint here -->  
        </Thumbprint>  
    </PropertyGroup>  

    <Target Name="Build">  

        <GenerateApplicationManifest  
            AssemblyName="SimpleWinApp.exe"  
            AssemblyVersion="1.0.0.0"  
            EntryPoint="@(EntryPoint)"  
            OutputManifest="SimpleWinApp.exe.manifest">  
            <Output  
                ItemName="ApplicationManifest"  
                TaskParameter="OutputManifest"/>  
        </GenerateApplicationManifest>  

        <GenerateDeploymentManifest  
                AssemblyName="SimpleWinApp.application"  
                AssemblyVersion="1.0.0.0"  
                EntryPoint="@(ApplicationManifest)"  
                Install="false"  
                OutputManifest="SimpleWinApp.application">  
                <Output  
                    ItemName="DeployManifest"  
                    TaskParameter="OutputManifest"/>  
        </GenerateDeploymentManifest>  

        <SignFile  
            CertificateThumbprint="$(Thumbprint)"  
            SigningTarget="@(ApplicationManifest)"/>  

        <SignFile  
            CertificateThumbprint="$(Thumbprint)"  
            SigningTarget="@(DeployManifest)"/>  

    </Target>  
</Project>  

Example

次の例では、GenerateApplicationManifest タスクおよび GenerateDeploymentManifest タスクを使用して、複数ファイルおよびアセンブリで構成されているアプリケーションの ClickOnceClickOnce アプリケーション マニフェストおよび配置マニフェストを作成しています。This example uses the GenerateApplicationManifest and GenerateDeploymentManifest tasks to generate ClickOnceClickOnce application and deployment manifests for an application with multiple files and assemblies.

注意

次の例では、マニフェストの作成処理に着目するために、アプリケーションのバイナリはすべてビルド済みであると仮定してあります。In the example below, all application binaries are pre-built in order to focus on manifest generation aspects. この例では、完全に実用的な ClickOnceClickOnce 配置が作成されます。This example produces a fully working ClickOnceClickOnce deployment.

注意

この例の Thumbprint タスクで使用されている SignFile プロパティの詳細については、「SignFile タスク」を参照してください。For more information on the Thumbprint property used in the SignFile task in this example, see SignFile Task.

<Project DefaultTargets="Build"  
    xmlns="http://schemas.microsoft.com/developer/msbuild/2003">  

    <ItemGroup>  
        <EntryPoint Include="SimpleWinApp.exe" />  
    </ItemGroup>  

    <PropertyGroup>  
        <Thumbprint>  
             <!-- Insert generated thumbprint here -->  
        </Thumbprint>  
        <DeployUrl>  
            <!-- Insert the deployment URL here -->  
        </DeployUrl>  
        <SupportUrl>  
            <!-- Insert the support URL here -->  
        </SupportUrl>  
    </PropertyGroup>  

    <Target Name="Build">  

    <ItemGroup>  
        <EntryPoint Include="SimpleWinApp.exe"/>  
        <Dependency Include="ClassLibrary1.dll">  
            <AssemblyType>Managed</AssemblyType>  
            <DependencyType>Install</DependencyType>  
        </Dependency>  
        <Dependency Include="ClassLibrary2.dll">  
            <AssemblyType>Managed</AssemblyType>  
            <DependencyType>Install</DependencyType>  
            <Group>Secondary</Group>  
        </Dependency>  
        <Dependency Include="MyAddIn1.dll">  
            <AssemblyType>Managed</AssemblyType>  
            <DependencyType>Install</DependencyType>  
            <TargetPath>Addins\MyAddIn1.dll</TargetPath>  
        </Dependency>  
        <Dependency Include="ClassLibrary3.dll">  
            <AssemblyType>Managed</AssemblyType>  
            <DependencyType>Prerequisite</DependencyType>  
        </Dependency>  

        <File Include="Text1.txt">  
            <TargetPath>Text\Text1.txt</TargetPath>  
            <Group>Text</Group>  
        </File>  
        <File Include="DataFile1.xml ">  
            <TargetPath>Data\DataFile1.xml</TargetPath>  
            <IsDataFile>true</IsDataFile>  
        </File>  

        <IconFile Include="Heart.ico"/>  
        <ConfigFile Include="app.config">  
            <TargetPath>SimpleWinApp.exe.config</TargetPath>  
        </ConfigFile>  
        <BaseManifest Include="app.manifest"/>  
    </ItemGroup>  

    <Target Name="Build">  

        <GenerateApplicationManifest  
            AssemblyName="SimpleWinApp.exe"  
            AssemblyVersion="1.0.0.0"  
            ConfigFile="@(ConfigFile)"  
            Dependencies="@(Dependency)"  
            Description="TestApp"  
            EntryPoint="@(EntryPoint)"  
            Files="@(File)"  
            IconFile="@(IconFile)"  
            InputManifest="@(BaseManifest)"  
            OutputManifest="SimpleWinApp.exe.manifest">  
            <Output  
                ItemName="ApplicationManifest"  
                TaskParameter="OutputManifest"/>  
        </GenerateApplicationManifest>  

        <GenerateDeploymentManifest  
            AssemblyName="SimpleWinApp.application"  
            AssemblyVersion="1.0.0.0"  
            DeploymentUrl="$(DeployToUrl)"  
            Description="TestDeploy"  
            EntryPoint="@(ApplicationManifest)"  
            Install="true"  
            OutputManifest="SimpleWinApp.application"  
            Product="SimpleWinApp"  
            Publisher="Microsoft"  
            SupportUrl="$(SupportUrl)"  
            UpdateEnabled="true"  
            UpdateInterval="3"  
            UpdateMode="Background"  
            UpdateUnit="weeks">  
            <Output  
                ItemName="DeployManifest"  
                TaskParameter="OutputManifest"/>  
        </GenerateDeploymentManifest>  

        <SignFile  
            CertificateThumbprint="$(Thumbprint)"  
            SigningTarget="@(ApplicationManifest)"/>  

        <SignFile  
            CertificateThumbprint="$(Thumbprint)"  
            SigningTarget="@(DeployManifest)"/>  

    </Target>  
</Project>  

Example

次の例では、GenerateApplicationManifest タスクを使用して、Test.exe アプリケーション用のネイティブ マニフェストを作成しています。Test.exe は、ネイティブ コンポーネント Alpha.dll および分離 COM コンポーネント Bravo.dll を参照しています。This example uses the GenerateApplicationManifest task to generate a native manifest for application Test.exe, referencing native component Alpha.dll and an isolated COM component Bravo.dll.

この例では、Registration Free COM を利用して、XCOPY でアプリケーションを配置できる Test.exe.manifest が作成されます。This example produces the Test.exe.manifest, making the application XCOPY deployable taking advantage of Registration Free COM.

注意

次の例では、マニフェストの作成処理に着目するために、アプリケーションのバイナリはすべてビルド済みであると仮定してあります。In the example below, all application binaries are pre-built in order to focus on manifest generation aspects. この例では、完全に実用的な ClickOnceClickOnce 配置が作成されます。This example produces a fully working ClickOnceClickOnce deployment.

<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">  

    <ItemGroup>  
        <File Include="Test.exe" />  
        <Dependency Include="Alpha.dll">  
            <AssemblyType>Native</AssemblyType>  
            <DependencyType>Install</DependencyType>  
        </Dependency>  
        <ComComponent Include="Bravo.dll" />  
    </ItemGroup>  

    <Target Name="Build">  
        <GenerateApplicationManifest  
            AssemblyName="Test.exe"  
            AssemblyVersion="1.0.0.0"  
            Dependencies="@(Dependency)"  
            Files="@(File)"  
            IsolatedComReferences="@(ComComponent)"  
            ManifestType="Native">  
            <Output  
                ItemName="ApplicationManifest"  
                TaskParameter="OutputManifest"/>  
        </GenerateApplicationManifest>  

    </Target>  
</Project>  

関連項目See Also

タスク Tasks
GenerateDeploymentManifest タスク GenerateDeploymentManifest Task
SignFile タスク SignFile Task
Task Reference (タスク リファレンス)Task Reference