Поделиться через


<Элемент зависимостей> (приложение ClickOnce)

Определяет зависимость платформы или сборки, необходимую для приложения.

Синтаксис


      <dependency>
   <dependentOS
      supportURL
      description
   >
      <osVersionInfo>
         <os
            majorVersion
            minorVersion
            buildNumber
            servicePackMajor
            servicePackMinor
            productType
            suiteType
         />
      </osVersionInfo>
   </dependentOS>
   <dependentAssembly
      dependencyType
      allowDelayedBinding
      group
      codeBase
      size
   >
      <assemblyIdentity
         name
         version
         processorArchitecture
         language
      >
         <hash>
            <dsig:Transforms>
               <dsig:Transform
                  Algorithm
            />
            </dsig:Transforms>
            <dsig:DigestMethod />
            <dsig:DigestValue>
            </dsig:DigestValue>
    </hash>

      </assemblyIdentity>
   </dependentAssembly>
</dependency>

Элементы и атрибуты

Элемент dependency является обязательным. В одном манифесте приложения может быть несколько экземпляров dependency .

Элемент dependency не имеет атрибутов и содержит следующие дочерние элементы.

зависимыйOS

Необязательно. Содержит osVersionInfo элемент. Элементы dependentOS являются взаимоисключающими: одно или другое должно существовать для dependency элемента, но не для обоихdependentAssembly.

dependentOS поддерживает следующие атрибуты.

Атрибут Description
supportUrl Необязательно. Указывает URL-адрес поддержки для зависимой платформы. Этот URL-адрес отображается пользователю, если найдена требуемая платформа.
description Необязательно. Описывается в форме, доступной для чтения человеком, операционная система, описанная элементом dependentOS .

osVersionInfo

Обязательный. Этот элемент является дочерним по отношению к элементу dependentOS и содержит элемент os . Этот элемент не содержит атрибуты.

os

Обязательный. Этот элемент является дочерним по отношению к элементу osVersionInfo . Этот элемент содержит следующие атрибуты.

Атрибут Description
majorVersion Обязательное. Указывает основной номер версии ОС.
minorVersion Обязательный. Указывает дополнительный номер версии ОС.
buildNumber Обязательный. Указывает номер сборки ОС.
servicePackMajor Обязательный. Указывает основное число пакетов обновления операционной системы.
servicePackMinor Необязательно. Указывает дополнительный номер пакета обновления операционной системы.
productType Необязательно. Определяет значение типа продукта. Допустимые значения: server, workstation и domainController. Например, для Windows 10 это значение workstationатрибута.
suiteType Необязательно. Определяет набор продуктов, доступный в системе или тип конфигурации системы. Допустимые значения: backoffice, blade, datacenter, enterprise, home, professional, smallbusiness, smallbusinessRestricted и terminal. Например, для Windows 2000 Professional этот атрибут имеет значение professional.

зависимыйAssembly

Необязательно. Содержит assemblyIdentity элемент. Элементы dependentOS являются взаимоисключающими: одно или другое должно существовать для dependency элемента, но не для обоихdependentAssembly.

dependentAssembly имеет следующие атрибуты.

Атрибут Description
dependencyType Обязательное. Указывает тип зависимости. Допустимые значения — prerequisite и install. Сборка install устанавливается в составе приложения ClickOnce. Сборка prerequisite должна присутствовать в глобальном кэше сборок (GAC) перед установкой приложения ClickOnce.
allowDelayedBinding Обязательный. Указывает, может ли сборка загружаться программным способом во время выполнения.
group Необязательно. dependencyType Если для атрибута задано значение install, назначает именованную группу сборок, которые устанавливаются только по запросу. Подробнее см. в разделе Пошаговое руководство. Загрузка сборок по требованию с помощью API развертывания ClickOnce с использованием конструктора.

Если задано значение framework и dependencyType для атрибута, prerequisiteто сборка назначается как часть платформа .NET Framework. Глобальный кэш сборок (GAC) не проверка для этой сборки при установке на платформа .NET Framework 4 и более поздних версиях.
codeBase Обязательный, если для атрибута dependencyType задано значение install. Путь к зависимой сборке. Может быть либо абсолютным путем, либо путем относительно базы кода манифеста. Этот путь должен быть допустимым универсальным кодом ресурса (URI), чтобы манифест сборки был допустимым.
size Обязательный, если для атрибута dependencyType задано значение install. Размер зависимой сборки в байтах.

assemblyIdentity

Обязательный. Этот элемент является дочерним по отношению к элементу dependentAssembly и содержит следующие атрибуты.

Атрибут Description
name Обязательное. Определяет имя приложения.
version Обязательный. Указывает номер версии приложения в следующем формате: major.minor.build.revision
publicKeyToken Необязательно. Задает шестнадцатеричную строку размером 16 символов, представляющую последние 8 байт SHA-1 хэш-значения открытого ключа, под которым подписано приложение или сборка. Открытый ключ, используемый для подписи каталога, должен иметь значение 2048 бит или более.
processorArchitecture Необязательно. Задает процессор. Допустимые значения предназначены x86 для 32-разрядных Windows и I64 для 64-разрядных Windows.
language Необязательно. Определяет два кода языка части, например EN-US, сборки.

hash

Элемент hash является необязательным дочерним элементом assemblyIdentity элемента. У элемента hash нет атрибутов.

ClickOnce использует алгоритмический хэш всех файлов в приложении в качестве проверка безопасности, чтобы убедиться, что ни один из файлов не был изменен после развертывания. hash Если элемент не включен, этот проверка не будет выполнен. Поэтому не рекомендуется пропускать hash элемент.

dsig:Transforms

Элемент dsig:Transforms является обязательным дочерним элементом hash элемента. У элемента dsig:Transforms нет атрибутов.

dsig:Transform

Элемент dsig:Transform является обязательным дочерним элементом dsig:Transforms элемента. Элемент dsig:Transform имеет перечисленные ниже атрибуты.

Атрибут Description
Algorithm Алгоритм, используемый для вычисления дайджеста для этого файла. В настоящее время единственным значением, используемым ClickOnce, является urn:schemas-microsoft-com:HashTransforms.Identity.

dsig:DigestMethod

Элемент dsig:DigestMethod является обязательным дочерним элементом hash элемента. Элемент dsig:DigestMethod имеет перечисленные ниже атрибуты.

Атрибут Description
Algorithm Алгоритм, используемый для вычисления дайджеста для этого файла. В настоящее время единственным значением, используемым ClickOnce, является http://www.w3.org/2000/09/xmldsig#sha1.

dsig:DigestValue

Элемент dsig:DigestValue является обязательным дочерним элементом hash элемента. У элемента dsig:DigestValue нет атрибутов. Его текстовое значение — вычисляемый хэш для указанного файла.

Замечания

Все сборки, используемые приложением, должны иметь соответствующий dependency элемент. Зависимые сборки не включают сборки, которые должны быть предварительно установлены в глобальном кэше сборок в качестве сборок платформы.

Пример

В следующем примере кода показаны dependency элементы манифеста приложения ClickOnce. Этот пример кода является частью более крупного примера, предоставленного для раздела манифеста приложения ClickOnce.

<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>

См. также