<dependency> Öğesi (ClickOnce Dağıtımı)
Uygulama bildiriminin konumunu ve yüklenecek uygulamanın sürümünü belirtir.
<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>
Öğeler ve Öznitelikler
dependency öğesi gereklidir. Öznitelikleri yoktur. Bir dağıtım bildiriminin birden çok dependency öğesi olabilir.
dependency öğesi genellikle bir ClickOnce uygulaması içinde bulunan derlemeler üzerinde ana uygulamayla ilgili bağımlılıkları açıklar. Main.exe uygulamanız DotNetAssembly.dll olarak adlandırılan bir derlemeyi kullanıyorsa, bu derleme bağımlılık bölümünde listelenmelidir. Bunun yanında bağımlılık, genel dil çalışma zamanının özel bir sürümü üzerinde, genel bütünleştirilmiş kod önbelleği (GAC) içinde bulunan bir derleme üzerinde veya bir COM nesnesi üzerinde yer alan bağımlılıklar gibi farklı türdeki bağımlılıkları da açıklayabilir. Bu, el değmeden dağıtım teknolojisi olduğu için ClickOnce bu tür bağımlılıkların karşıdan yükleme ve kurulumunu başlatamaz ama bir veya daha fazla belirtilen bağımlılık bulunmazsa uygulamanın çalışmasını engellemez.
dependentAssembly
Gerekli. Bu öğe assemblyIdentity öğesini içerir. Aşağıdaki tablo dependentAssembly öğesi tarafından desteklenen öznitelikleri gösterir.
Öznitelik |
Açıklama |
---|---|
preRequisite |
İsteğe Bağlı. Bu derlemenin GAC'de zaten bulunduğunu belirtir. Geçerli değerler true ve false değerlerdir. true ise ve belirtilen bütünleştirilmiş kod GAC'de yoksa, uygulama çalışmaz. |
visible |
İsteğe Bağlı. Bağımlılıkları da dahil olmak üzere üst düzey uygulama kimliğini tanımlar. Uygulama depolama ve etkinleştirmeyi yönetmek için ClickOnce tarafından dahili olarak kullanılır. |
dependencyType |
Gerekli. Bağımlılık ve uygulama arasındaki ilişki. Geçerli değerler şunlardır:
|
codebase |
İsteğe Bağlı. Uygulama bildirimi için tam yol |
size |
İsteğe Bağlı. Uygulama bildiriminin bayt cinsinden boyutu. |
assemblyIdentity
Gerekli. Bu öğe dependentAssembly öğesinin alt öğesidir. assemblyIdentity'nin içeriği ClickOnce uygulama bildiriminde açıklananla aynı olmalıdır. Aşağıdaki tablo assemblyIdentity öğesi tarafından desteklenen öznitelikleri gösterir.
Öznitelik |
Açyklama |
---|---|
Name |
Gerekli. Uygulamanın adını tanımlar. |
Version |
Gerekli. Uygulamanın sürüm numarasını aşağıdaki biçimde belirler: major.minor.build.revision |
publicKeyToken |
Gerekli. Uygulamanın veya derlemenin altında imzalandığı, ortak anahtarın SHA-1 karma değerinin son 8 baytını temsil eden 16 karakter onaltılık dizeyi belirtir. Ortak anahtar 2048 bit veya daha fazla olmalıdır. |
processorArchitecture |
Gerekli. Mikro işlemciyi belirtir. Geçerli değerler şunlardır: 32-Bit Windows için x86 ve 64 bit Windows için IA64 |
Language |
İsteğe Bağlı. Derlemenin iki parçalı dil kodlarını tanımlar. Örneğin, EN-US İngilizce (ABD) için kullanılan kısaltmadır. Varsayılan değer neutral olur. Bu öğe asmv2 ad uzayındadır. |
type |
İsteğe Bağlı. Windows ile geriye dönük uyumluluk için yan yana yükleme teknolojisi. Tek izin verilen değer Win32'dir. |
karma
hash öğesi, file öğesinin isteğe bağlı bir alt nesnesidir. hash öğesi özniteliklere sahip değildir.
Dağıtım sonrası hiçbir dosyanın değişmediğinden emin olmak için, ClickOnce uygulamasında yer alan tüm dosyaların algoritmik bir karmasını güvenlik denetimi olarak kullanır. hash öğesi dahil değilse, bu denetim gerçekleştirilmez. Bu nedenle, hash öğesini atlama önerilmez.
dsig:Transforms
dsig:Transforms öğesi, hash öğesinin isteğe bağlı bir alt nesnesidir. dsig:Transforms öğesi özniteliklere sahip değildir.
dsig:Transform
dsig:Transform öğesi, dsig:Transforms öğesinin isteğe bağlı bir alt nesnesidir. Aşağıdaki tablo dsig:Transform öğesi tarafından desteklenen öznitelikleri gösterir.
Öznitelik |
Açıklama |
---|---|
Algorithm |
Bu dosyaya ait özeti hesaplamak için kullanılan algoritma. Şu anda ClickOnce tarafından kullanılan tek değer, urn:schemas-microsoft-com:HashTransforms.Identity değeridir. |
dsig:DigestMethod
dsig:DigestMethod öğesi, hash öğesinin isteğe bağlı bir alt nesnesidir. Aşağıdaki tablo dsig:DigestMethod öğesi tarafından desteklenen öznitelikleri gösterir.
Öznitelik |
Açıklama |
---|---|
Algorithm |
Bu dosyaya ait özeti hesaplamak için kullanılan algoritma. Şu anda ClickOnce tarafından kullanılan tek değer http://www.w3.org/2000/09/xmldsig#sha1 değeridir. |
dsig:DigestValue
dsig:DigestValue öğesi, hash öğesinin isteğe bağlı bir alt nesnesidir. dsig:DigestValue öğesi özniteliklere sahip değildir. Belirtilen dosya için hesaplanan karma kendi metin değeridir.
Açıklamalar
Dağıtım bildirimleri genellikle uygulama bildiriminin sürümü ve ismini belirten tek bir assemblyIdentity öğesine sahiptir.
Örnek
Aşağıdaki kod ClickOnce dağıtım bildiriminde dependency öğesini gösterir.
<!-- 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>
Aşağıdaki kod örneği GAC'de önceden yüklenmiş derleme üzerindeki bir bağımlılığı belirtir.
<dependency>
<dependentAssembly dependencyType="preRequisite" allowDelayedBinding="true">
<assemblyIdentity name="GACAssembly" version="1.0.0.0" language="neutral" processorArchitecture="msil" />
</dependentAssembly>
</dependency>
Aşağıdaki kod örneği, ortak dil çalışma zamanının özel bir sürümü üzerindeki bir bağımlılığı belirtir.
<dependency>
<dependentAssembly dependencyType="preRequisite" allowDelayedBinding="true">
<assemblyIdentity name="Microsoft.Windows.CommonLanguageRuntime" version="2.0.50215.0" />
</dependentAssembly>
</dependency>
Aşağıdaki kod örneği, bir işletim sistemi bağımlılığını belirtir.
<dependency>
<dependentOS supportUrl="https://www.microsoft.com" description="Microsoft Windows Operating System">
<osVersionInfo>
<os majorVersion="4" minorVersion="10" />
</osVersionInfo>
</dependentOS>
</dependency>