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


Элемент <dependency> (приложение ClickOnce)

Обновлен: Июль 2008

Идентифицирует платформу или зависимость сборки, которая требуется для приложения.

<dependency>
   <dependentOS
      supportURL
      description
   >
      <osVersionInfo>
         <os
            majorVersion
            minorVersion
            buildNumber
            servicePackMajor
            servicePackMinor
            productType
            suiteType
         /> 
      </osVersionInfo>
   </dependentOS>
   <dependentAssembly
      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 не имеет атрибутов и содержит следующие дочерние элементы.

dependentOS

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

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

Атрибут

Описание

supportUrl

Необязательный. Задает поддержку URL для зависимой платформы. Этот URL показывается пользователю, если найдена требуемая платформа.

description

Необязательный. В удобочитаемой форме описывает операционную систему, описанную элементом dependentOS.

osVersionInfo

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

os

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

Атрибут

Описание

majorVersion

Обязательный. Задает старший разряд номера версии операционной системы.

minorVersion

Обязательный. Задает младший разряд номера версии операционной системы.

buildNumber

Обязательный. Задает номер построения операционной системы.

servicePackMajor

Обязательный. Задает старший разряд номера пакета обновления операционной системы.

servicePackMinor

Необязательный. Задает младший разряд номера пакета обновления операционной системы.

productType

Необязательный. Идентифицирует значение типа продукта. Допустимые значения: server, workstation и domainController. Например, для Windows 2000 Professional значение этого атрибута — workstation.

suiteType

Необязательный. Идентифицирует пакет продуктов, доступный в системе, или тип конфигурации системы. Допустимые значения: backoffice, blade, datacenter, enterprise, home, professional, smallbusiness, smallbusinessRestricted, и terminal. Например, для Windows 2000 Professional значение этого атрибута — professional.

dependentAssembly

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

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

Атрибут

Описание

codeBase

Обязательный. Путь к сборке, представленный этой сборкой. К основанию кода манифеста может быть или абсолютный путь, или относительный путь. Этим путем должен быть допустимый URI, для того чтобы манифест сборки был допустимым.

size

Обязательный. Размер зависимой сборки в байтах.

assemblyIdentity

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

Атрибут

Описание

name

Обязательный. Идентифицирует имя приложения.

version

Обязательный. Задает номер версии приложения в следующем формате: основной.дополнительный.построение.редакция.

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 имеет следующие атрибуты.

Атрибут

Описание

Algorithm

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

dsig:DigestMethod

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

Атрибут

Описание

Algorithm

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

dsig:DigestValue

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

Заметки

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

Пример

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

<!-- This XML identifies a SpellingChecker assembly. -->
<dependency>
  <dependentAssembly codebase="SpellingChecker.dll" size="29696">
    <assemblyIdentity name="SpellingChecker" version="2.0.0.0" publicKeyToken="e8ed396099c4b4e9" processorArchitecture="msil" language="es-PE" />
    <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>2+33lqQoPphgov907Kfp1v4TZMw=</dsig:DigestValue>
    </hash>
  </dependentAssembly>
</dependency>

<!-- This XML describes an operating system dependency for the application. -->
<!--Microsoft Windows Operating System Platform Dependency-->
<dependency>
  <dependentOS supportUrl="https://www.microsoft.com" description="Microsoft Windows Operating System">
    <osVersionInfo>
      <os majorVersion="4" minorVersion="10" />
    </osVersionInfo>
  </dependentOS>
</dependency>

См. также

Ссылки

Манифест приложения ClickOnce

Журнал изменений

Дата

Журнал изменений

Причина

Июль 2008

Добавлены необязательные сведения об элементе hash.

Улучшение информации.