GenerateApplicationManifest - задачаGenerateApplicationManifest task

Создает манифест приложения ClickOnceClickOnce или собственный манифест.Generates a ClickOnceClickOnce application manifest or a native manifest. Собственный манифест описывает компонент, определяя для него уникальный идентификатор, а также идентифицируя все составляющие компонент сборки и файлы.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.

Указывает поле 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.

Указывает поле 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, необходимую приложению.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 Item metadata.
Description Необязательный параметр String .Optional String parameter.

Указывает описание для приложения или компонента.Specifies the description for the application or component.
EntryPoint Необязательный параметр ITaskItem[] .Optional ITaskItem[] parameter.

Задает отдельный элемент, указывающий точку входа для создаваемой сборки манифеста.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.

Указывает URL-адрес веб-страницы, который отображается в диалоговых окнах отчетов об ошибках во время установок ClickOnce.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.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).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.

Указывает минимально возможную версию операционной системы (ОС), необходимую для приложения.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. Если этот параметр не задан, используется значение "4.10.0.0", обозначающее Windows 98 Second Edition — минимальную версию ОС, поддерживаемую платформой .NET Framework.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. Если этот параметр не задан, имя выходного файла выводится из идентификатора создаваемого манифеста.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. Если этот параметр не задан, имя выводится из идентификатора создаваемого манифеста.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. Если этот параметр не задан, имя выводится из имени зарегистрированного пользователя или из идентификатора создаваемого манифеста.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 с пакетом обновления 1 (SP1) или более поздней версии.If true, the application requires the .NET Framework 3.5 SP1 or a more recent version.
TargetCulture Необязательный параметр String .Optional String parameter.

Идентифицирует язык и региональные параметры приложения и указывает поле 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-документе должен быть узлом trustInfo в пространстве имен asmv2.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, свойства Product, Publisher и 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.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.

Эти метаданные допустимы для всех файлов, где IsDataFile имеет значение false, и всех зависимостей, где DependencyType имеет значение Install.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. Этот атрибут допустим для всех файлов и зависимостей, для которых DependencyType имеет значение Install.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, чтобы создать манифест развертывания для приложения с одной сборкой.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.

Это иллюстрирует самый простой сценарий создания манифестов, где манифесты ClickOnceClickOnce создаются для одной программы.This illustrates the simplest possible manifest generation scenario where ClickOnceClickOnce manifests are generated for a single program. Для манифеста удостоверение и имя по умолчанию наследуются от сборки.A default name and identity are inferred from the assembly for the manifest.

Note

В приведенном ниже примере все двоичные файлы приложения собраны заранее, чтобы сосредоточить внимание на создании манифестов.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.

Note

Дополнительные сведения о свойстве 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 для приложения с одной сборкой, задавая при этом имя и удостоверение манифестов.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.

Этот пример похож на предыдущий, за исключением того, что имя и удостоверение манифестов указываются явно.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.

Note

В приведенном ниже примере все двоичные файлы приложения собраны заранее, чтобы сосредоточить внимание на создании манифестов.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.

Note

Дополнительные сведения о свойстве 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.

Note

В приведенном ниже примере все двоичные файлы приложения собраны заранее, чтобы сосредоточить внимание на создании манифестов.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.

Note

Дополнительные сведения о свойстве 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, ссылаясь на собственный компонент 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.

Этот пример создает Test.exe.manifest, делая приложение развертываемым посредством XCOPY с помощью преимущества COM без регистрации.This example produces the Test.exe.manifest, making the application XCOPY deployable and taking advantage of Registration Free COM.

Note

В приведенном ниже примере все двоичные файлы приложения собраны заранее, чтобы сосредоточить внимание на создании манифестов.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