<dependency> Prvek (nasazení ClickOnce)
Identifikuje verzi aplikace k instalaci pro nasazení a umístění manifestu aplikace.
<dependency>
<dependentAssembly
preRequisite
visible
dependencyType
codeBase
size
>
<assemblyIdentity
name
version
publicKeyToken
processorArchitecture
language
type
/>
<hash>
<dsig:Transforms>
<dsig:Transform
Algorithm
/>
</dsig:Transforms>
<dsig:DigestMethod />
<dsig:DigestValue>
</dsig:DigestValue>
</hash>
</dependentAssembly>
</dependency>
Atributy a prvky
Prvek dependency je povinný.Nemá žádné atributy.Manifest nasazení může mít více dependency prvků.
Prvek dependency obvykle vyjadřuje závislosti pro hlavní aplikaci na sestavení, které jsou obsaženy v ClickOnce aplikaci.Pokud aplikace Main.exe potřebuje sestavení nazvané DotNetAssembly.dll, musí být toto sestavení uvedeno v oddílu závislostí.Závislost však může vyjádřit také jiné typy závislostí, jako je například závislost na konkrétní verzi modulu CLR, na sestavení v globální mezipaměti sestavení (GAC) nebo na objektu modelu COM.Protože se jedná o technologii no-touch nasazení, ClickOnce nemůže zahájit stažení a instalaci těchto typů závislostí, ale zabraňuje aplikaci ve spuštění, pokud jedna nebo více zadaných závislostí neexistuje.
dependentAssembly
Povinné.Tento prvek obsahuje assemblyIdentity.V následující tabulce jsou uvedeny atributy podporované dependentAssembly.
Atribut |
Description |
---|---|
preRequisite |
Nepovinné.Určuje, že by toto sestavení již mělo existovat v globální mezipaměť sestavení (GAC).Platné hodnoty jsou true a false.Pokud je True a zadané sestavení neexistuje v globální mezipaměť sestavení (GAC), aplikaci se nezdaří spustit. |
visible |
Nepovinné.Identifikuje identitu nejvyšší úrovňe aplikace včetně jejích závislostí.Interně používán ClickOnce ke správě úložiště a aktivace aplikace. |
dependencyType |
Povinné.Relace mezi touto závislostí a aplikací.Platné hodnoty:
|
codebase |
Nepovinné.Úplná cesta k manifestu aplikace. |
size |
Nepovinné.Velikost manifestu aplikace, v bajtech. |
assemblyIdentity
Povinné.Tento prvek je podřízeným prvku dependentAssembly.Obsah assemblyIdentity musí být stejný, jak je popsáno v manifestu aplikace ClickOnce.V následující tabulce jsou uvedeny atributy prvku assemblyIdentity.
Atribut |
Description |
---|---|
Name |
Povinné.Identifikuje název aplikace. |
Version |
Povinné.Určuje číslo verze aplikace, v následujícím formátu: major.minor.build.revision |
publicKeyToken |
Povinné.Určuje 16ti znakový šestnáctkový řetězec, který představuje posledních 8 bajtů hodnoty SHA-1 hash veřejného klíče, pod kterým jsou aplikace nebo sestavení podepsány.Veřejný klíč použitý k podpisu musí mít délku 2048 bitů nebo více. |
processorArchitecture |
Povinné.Určuje procesor.Platné hodnoty jsou x86 pro 32bitové verze Windows a IA64 pro 64bitové verze Windows. |
Language |
Nepovinné.Určuje dvě součásti kódu jazyka sestavení.Například EN-US, což je zkratka pro angličtinu (USA).Výchozí hodnota je neutral.Tento prvek je v oboru názvů asmv2. |
type |
Nepovinné.Pro zpětnou kompatibilitu se souběžnou instalační technologií Windows.Povolená hodnota je pouze Win32. |
hodnota hash
Prvek hash je volitelným podřízeným prvku file.Prvek hash neobsahuje žádné atributy.
ClickOnce aplikace používá algorithmickou hodnotu hash všech souborů v aplikaci jako kontrolu zabezpečení, aby žádný ze souborů nebyl změněn po nasazení.Pokud prvek hash není zahrnut, nebude provedena kontrola. Proto není vynechání prvku hash doporučeno.
dsig:Transforms
Prvek dsig:Transforms je vyžadovaným podřízeným prvku hash. Prvek dsig:Transforms neobsahuje žádné atributy.
dsig:Transform
Prvek dsig:Transform je vyžadovaným podřízeným prvku dsig:Transforms.V následující tabulce jsou uvedeny atributy prvku dsig:Transform.
Atribut |
Description |
---|---|
Algorithm |
Algoritmus použitý pro výpočet algoritmu Digest pro tento soubor.Aktuálně jedinou používanou hodnotou ClickOnce je pouze urn:schemas-microsoft-com:HashTransforms.Identity. |
dsig:DigestMethod
Prvek dsig:DigestMethod je vyžadovaným podřízeným prvku hash.V následující tabulce jsou uvedeny atributy prvku dsig:DigestMethod.
Atribut |
Description |
---|---|
Algorithm |
Algoritmus použitý pro výpočet algoritmu Digest pro tento soubor.Aktuálně jedinou používanou hodnotou ClickOnce je pouze http://www.w3.org/2000/09/xmldsig#sha1. |
dsig:DigestValue
Prvek dsig:DigestValue je vyžadovaným podřízeným prvku hash.Prvek dsig:DigestValue neobsahuje žádné atributy.Jeho textová hodnota je vypočítanou hodnotou hash pro zadaný soubor.
Poznámky
Manifesty nasazení mají obvykle jeden prvek assemblyIdentity, který určuje název a verzi manifestu aplikace.
Příklad
Následující příklad kódu ukazuje prvek dependency v manifestu nasazení ClickOnce.
<!-- Identify the assembly dependencies -->
<dependency>
<dependentAssembly dependencyType="install" allowDelayedBinding="true" codebase="MyApplication.exe" size="16384">
<assemblyIdentity name="MyApplication" version="0.0.0.0" cultural="neutral" processorArchitecture="msil" />
<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>YzXYZJAvj9pgAG3y8jXUjC7AtHg=</dsig:DigestValue>
</hash>
</dependentAssembly>
</dependency>
Následující příklad kódu určuje závislost na sestavení již nainstalovaného do globální mezipaměti sestavení (GAC).
<dependency>
<dependentAssembly dependencyType="preRequisite" allowDelayedBinding="true">
<assemblyIdentity name="GACAssembly" version="1.0.0.0" language="neutral" processorArchitecture="msil" />
</dependentAssembly>
</dependency>
Následující příklad kódu určuje závislost na určité verzi modulu CLR.
<dependency>
<dependentAssembly dependencyType="preRequisite" allowDelayedBinding="true">
<assemblyIdentity name="Microsoft.Windows.CommonLanguageRuntime" version="2.0.50215.0" />
</dependentAssembly>
</dependency>
Následující příklad kódu určuje závislost operačního systému.
<dependency>
<dependentOS supportUrl="https://www.microsoft.com" description="Microsoft Windows Operating System">
<osVersionInfo>
<os majorVersion="4" minorVersion="10" />
</osVersionInfo>
</dependentOS>
</dependency>