Манифест приложения ClickOnceClickOnce application manifest

Объект ClickOnceClickOnce манифест приложения является XML-файл, описывающий приложение, которое развертывается с помощью ClickOnceClickOnce.A ClickOnceClickOnce application manifest is an XML file that describes an application that is deployed using ClickOnceClickOnce.

ClickOnceClickOnce манифесты приложений имеют следующие элементы и атрибуты.application manifests have the following elements and attributes.

ЭлементElement ОписаниеDescription АтрибутыAttributes
Элемент <assembly><assembly> Element Обязательный.Required. Это элемент верхнего уровня.Top-level element. manifestVersion
Элемент <assemblyIdentity><assemblyIdentity> Element Обязательный.Required. Определяет основную сборку из ClickOnceClickOnce приложения.Identifies the primary assembly of the ClickOnceClickOnce application. name

version

publicKeyToken

processorArchitecture

language
Элемент <trustInfo><trustInfo> Element Определяет требования к безопасности приложения.Identifies the application security requirements. НетNone
Элемент <entryPoint><entryPoint> Element Обязательный.Required. Определяет точку входа в код приложения.Identifies the application code entry point. name
Элемент <dependency><dependency> Element Обязательный.Required. Определяет все зависимости, необходимые для выполнения приложения.Identifies each dependency required for the application to run. При необходимости определяет сборки, которые требуется установить предварительно.Optionally identifies assemblies that need to be preinstalled. НетNone
Элемент <file><file> Element Необязательный параметр.Optional. Идентифицирует каждого файла не являющиеся сборками, который используется приложением.Identifies each nonassembly file that is used by the application. Может включать данные изоляции модели COM, связанные с этим файлом.Can include Component Object Model (COM) isolation data associated with the file. name

size

group

optional

writeableType
Элемент <fileAssociation><fileAssociation> Element Необязательный параметр.Optional. Определяет расширение файла, нужно связать с приложением.Identifies a file extension to be associated with the application. extension

description

progid

defaultIcon

ПримечанияRemarks

ClickOnceClickOnce Файл манифеста приложения определяет приложение, развернутое с помощью ClickOnceClickOnce.The ClickOnceClickOnce application manifest file identifies an application deployed using ClickOnceClickOnce. Дополнительные сведения о ClickOnceClickOnce см. в разделе Развертывание и безопасность технологии ClickOnce.For more information about ClickOnceClickOnce, see ClickOnce Security and Deployment.

Расположение файлаFile location

Объект ClickOnceClickOnce манифест приложения относится к отдельной версии развертывания.A ClickOnceClickOnce application manifest is specific to a single version of a deployment. По этой причине они должны храниться отдельно от манифеста развертывания.For this reason, they should be stored separately from deployment manifests. Распространенный способ — разместить их в подкаталоге соответствующая версия.The common convention is to place them in a subdirectory named after the associated version.

Манифест приложения всегда должны быть подписаны перед развертыванием.The application manifest always must be signed prior to deployment. Если вы вручную измените манифест приложения, необходимо использовать mage.exe для повторного подписания манифеста приложения, обновить манифест развертывания и затем повторно подписать манифест развертывания.If you change an application manifest manually, you must use mage.exe to re-sign the application manifest, update the deployment manifest, and then re-sign the deployment manifest. Дополнительные сведения см. в разделе Пошаговое руководство: Развертывание вручную приложения ClickOnce.For more information, see Walkthrough: Manually deploy a ClickOnce application.

Синтаксис имени файлаFile name syntax

Имя файла манифеста приложения ClickOnceClickOnce должно содержать полное имя и расширение приложения, определенные в элементе assemblyIdentity, и иметь расширение MANIFEST.The name of a ClickOnceClickOnce application manifest file should be the full name and extension of the application as identified in the assemblyIdentity element, followed by the extension .manifest. Например, манифест приложения, который ссылается на Example.exe приложение будет использовать следующий синтаксис имени файла.For example, an application manifest that refers to the Example.exe application would use the following file name syntax.

example.exe.manifest

ПримерExample

В следующем примере кода показан манифест приложения для ClickOnceClickOnce приложения.The following code example shows an application manifest for a ClickOnceClickOnce application.

<?xml version="1.0" encoding="utf-8"?>
<asmv1:assembly xsi:schemaLocation="urn:schemas-microsoft-com:asm.v1 assembly.adaptive.xsd" manifestVersion="1.0" xmlns:asmv3="urn:schemas-microsoft-com:asm.v3" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#" xmlns:co.v2="urn:schemas-microsoft-com:clickonce.v2" xmlns="urn:schemas-microsoft-com:asm.v2" xmlns:asmv1="urn:schemas-microsoft-com:asm.v1" xmlns:asmv2="urn:schemas-microsoft-com:asm.v2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:co.v1="urn:schemas-microsoft-com:clickonce.v1">
  <asmv1:assemblyIdentity name="My Application Deployment.exe" version="1.0.0.0" publicKeyToken="43cb1e8e7a352766" language="neutral" processorArchitecture="x86" type="win32" />
  <application />
  <entryPoint>
    <assemblyIdentity name="MyApplication" version="1.0.0.0" language="neutral" processorArchitecture="x86" />
    <commandLine file="MyApplication.exe" parameters="" />
  </entryPoint>
  <trustInfo>
    <security>
      <applicationRequestMinimum>
        <PermissionSet Unrestricted="true" ID="Custom" SameSite="site" />
        <defaultAssemblyRequest permissionSetReference="Custom" />
      </applicationRequestMinimum>
      <requestedPrivileges xmlns="urn:schemas-microsoft-com:asm.v3">
        <!--
          UAC Manifest Options
          If you want to change the Windows User Account Control level replace the
          requestedExecutionLevel node with one of the following.

        <requestedExecutionLevel  level="asInvoker" uiAccess="false" />
        <requestedExecutionLevel  level="requireAdministrator" uiAccess="false" />
        <requestedExecutionLevel  level="highestAvailable" uiAccess="false" />

         If you want to utilize File and Registry Virtualization for backward
         compatibility then delete the requestedExecutionLevel node.
    -->
        <requestedExecutionLevel level="asInvoker" uiAccess="false" />
      </requestedPrivileges>
    </security>
  </trustInfo>
  <dependency>
    <dependentOS>
      <osVersionInfo>
        <os majorVersion="4" minorVersion="10" buildNumber="0" servicePackMajor="0" />
      </osVersionInfo>
    </dependentOS>
  </dependency>
  <dependency>
    <dependentAssembly dependencyType="preRequisite" allowDelayedBinding="true">
      <assemblyIdentity name="Microsoft.Windows.CommonLanguageRuntime" version="4.0.20506.0" />
    </dependentAssembly>
  </dependency>
  <dependency>
    <dependentAssembly dependencyType="install" allowDelayedBinding="true" codebase="MyApplication.exe" size="4096">
      <assemblyIdentity name="MyApplication" version="1.0.0.0" language="neutral" processorArchitecture="x86" />
      <hash>
        <dsig:Transforms>
          <dsig:Transform Algorithm="urn:schemas-microsoft-com:HashTransforms.Identity" />
        </dsig:Transforms>
        <dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1" />
        <dsig:DigestValue>DpTW7RzS9IeT/RBSLj54vfTEzNg=</dsig:DigestValue>
      </hash>
    </dependentAssembly>
  </dependency>
<publisherIdentity name="CN=DOMAINCONTROLLER\UserMe" issuerKeyHash="18312a18a21b215ecf4cdb20f5a0e0b0dd263c08" /><Signature Id="StrongNameSignature" xmlns="http://www.w3.org/2000/09/xmldsig#">
...
</Signature></r:issuer></r:license></msrel:RelData></KeyInfo></Signature></asmv1:assembly>

См. такжеSee also