<dependency> 項目 (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 項目沒有屬性 (Attribute),而且會包含下列子項目。

cs1kkt20.collapse_all(zh-tw,VS.110).gifdependentOS

選擇項。包含 osVersionInfo 項目。dependentOS 和 dependentAssembly 項目是互斥的 (Mutually Exclusive):兩者之一必須為 dependency 項目存在,不過兩者無法並存。

dependentOS 支援下列屬性。

屬性

描述

supportUrl

選擇項。指定相依平台的支援 URL。如果找到必要的平台,便會對使用者顯示此 URL。

description

選擇項。以人們可讀的 (Human-Readable) 格式,描述由 dependentOS 項目所描述的作業系統。

cs1kkt20.collapse_all(zh-tw,VS.110).gifosVersionInfo

必要項。這個項目是 dependentOS 項目的子系,並含有 os 項目。此項目沒有任何屬性。

cs1kkt20.collapse_all(zh-tw,VS.110).gifos

必要項。這個項目是 osVersionInfo 項目的子系。此項目具有下列屬性。

屬性

描述

majorVersion

必要項。指定 OS 的主要版本號碼。

minorVersion

必要項。指定 OS 的次要版本號碼。

buildNumber

必要項。指定 OS 的組建編號。

servicePackMajor

必要項。指定 OS 的 Service Pack 主要號碼。

servicePackMinor

選擇項。指定 OS 的 Service Pack 次要號碼。

productType

選擇項。識別產品類型值。有效值為 server、workstation 和 domainController。例如,對於 Windows 2000 Professional,此屬性值為 workstation。

suiteType

選擇項。識別系統上可用的產品套件,或是系統的組態型別。有效值為 backoffice、blade、datacenter、enterprise、home、professional、smallbusiness、smallbusinessRestricted 和 terminal。例如,對於 Windows 2000 Professional,此屬性值為 professional。

cs1kkt20.collapse_all(zh-tw,VS.110).gifdependentAssembly

選擇項。包含 assemblyIdentity 項目。dependentOS 和 dependentAssembly 項目是互斥的 (Mutually Exclusive):兩者之一必須為 dependency 項目存在,不過兩者無法並存。

dependentAssembly 具有下列屬性。

屬性

描述

dependencyType

必要項。指定相依性類型。有效值為 preprequisite 和 install。install 組件已安裝為 ClickOnce 應用程式的一部分。全域組件快取 (GAC) 中必須有 prerequisite 組件,才能安裝 ClickOnce 應用程式。

allowDelayedBinding

必要項。指定是否可以用程式設計的方式在執行階段載入組件。

group

選擇項。如果 dependencyType 屬性設為 install,則會指定只有視需要才安裝的組件具名群組。如需詳細資訊,請參閱 逐步解說:依需求使用設計工具以 ClickOnce 部署 API 下載組件

如果此屬性設為 framework,而 dependencyType 屬性設為 prerequisite,則會將組件指定為 .NET Framework 的一部分。在 .NET Framework 4 上安裝組件時,不會檢查全域組件快取 (GAC) 中是否有此組件。

codeBase

當 dependencyType 屬性設為 install 時,這是必要項。相依組件的路徑,可以是絕對路徑,或是相對於資訊清單程式碼基底 (Code Base) 的路徑。為了讓組件資訊清單生效,這個路徑必須是有效的 URI。

size

當 dependencyType 屬性設為 install 時,這是必要項。相依組件的大小,以位元組為單位。

cs1kkt20.collapse_all(zh-tw,VS.110).gifassemblyIdentity

必要項。這個項目是 dependentAssembly 項目的子系,並具備下列屬性。

屬性

描述

name

必要項。識別應用程式名稱。

version

必要項。使用下列格式來指定應用程式的版本號碼:major.minor.build.revision

publicKeyToken

選擇項。指定 16 字元十六進位字串,其表示公開金鑰 (Public Key) 之 SHA-1 雜湊值 (Hash Value) 的最後 8 個位元組,而應用程式或組件即是在該字串下簽署的。用來對資料目錄進行簽章的公開金鑰 (Public Key) 必須有 2048 位元 (含) 以上。

processorArchitecture

選擇項。指定處理器。對 32 位元 Windows 的有效值為 x86,對 64 位元 Windows 的有效值則為 I64。

language

選擇項。識別組件的兩部分語言代碼 (例如,EN-US)。

cs1kkt20.collapse_all(zh-tw,VS.110).gifhash

hash 項目是 assemblyIdentity 項目的選擇性子項目。hash 項目沒有任何屬性。

ClickOnce 使用應用程式中所有檔案的演算雜湊做為安全性檢查,以確定沒有檔案在部署後遭到變更。如果沒有包含 hash 項目,則不會執行這項檢查。因此,建議您不要省略 hash 項目。

cs1kkt20.collapse_all(zh-tw,VS.110).gifdsig:Transforms

dsig:Transforms 項目是 hash 項目的必要子系。dsig:Transforms 項目沒有任何屬性。

cs1kkt20.collapse_all(zh-tw,VS.110).gifdsig:Transform

dsig:Transform 項目是 dsig:Transforms 項目的必要子系。dsig:Transform 項目具有下列屬性。

屬性

描述

Algorithm

用來計算這個檔案的摘要演算法。目前 ClickOnce 唯一使用的值是 urn:schemas-microsoft-com:HashTransforms.Identity。

cs1kkt20.collapse_all(zh-tw,VS.110).gifdsig:DigestMethod

dsig:DigestMethod 項目是 hash 項目的必要子系。dsig:DigestMethod 項目具有下列屬性。

屬性

描述

Algorithm

用來計算這個檔案的摘要演算法。目前 ClickOnce 唯一使用的值是 http://www.w3.org/2000/09/xmldsig#sha1。

cs1kkt20.collapse_all(zh-tw,VS.110).gifdsig:DigestValue

dsig:DigestValue 項目是 hash 項目的必要子系。dsig:DigestValue 項目沒有任何屬性。它的值是指定檔案之計算的雜湊。

備註

您的應用程式所用的所有組件必須有對應的 dependency 項目。相依組件不包含必須預先安裝在全域組件快取中,做為平台組件的組件。

範例

在下列程式碼範例中,會說明 ClickOnce 應用程式資訊清單中的 dependency 項目。這個程式碼範例是 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>

請參閱

參考

ClickOnce 應用程式資訊清單

<dependency> 項目 (ClickOnce 部署)