次の方法で共有


<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 要素には属性がなく、以下の子要素が含まれています。

dependentOS

省略可能。 osVersionInfo 要素を含みます。 dependentOS 要素と dependentAssembly 要素は相互に排他的です。1 つの dependency 要素に対して一方は存在する必要がありますが、両方が存在してはいけません。

dependentOS では、以下の属性がサポートされています。

属性 説明
supportUrl 省略可能。 依存しているプラットフォームのサポート URL を指定します。 この URL は、必要なプラットフォームが見つかった場合にユーザーに表示されます。
description 省略可能。 dependentOS 要素によって記述されているオペレーティング システムを、人間が判読できる形式で記述します。

osVersionInfo

必須。 この要素は dependentOS 要素の子であり、 os 要素を含んでいます。 この要素には属性はありません。

os

必須。 この要素は osVersionInfo 要素の子です。 この要素には、次の属性があります。

属性 説明
majorVersion 必須。 OS のメジャー バージョン番号を指定します。
minorVersion 必須。 OS のマイナー バージョン番号を指定します。
buildNumber 必須。 OS のビルド番号を指定します。
servicePackMajor 必須。 OS の Service Pack メジャー番号を指定します。
servicePackMinor 省略可能。 OS の Service Pack マイナー番号を指定します。
productType 省略可能。 製品の種類の値を識別します。 有効な値は serverworkstationdomainController です。 たとえば Windows 10 の場合、この属性値は workstation です。
suiteType 省略可能。 システムで使用可能な製品スイートや、システムの構成の種類を識別します。 有効な値は、backofficebladedatacenterenterprisehomeprofessionalsmallbusinesssmallbusinessRestricted、および terminal です。 たとえば Windows 2000 Professional の場合、この属性値は professional です。

dependentAssembly

省略可能。 assemblyIdentity 要素を含みます。 dependentOS 要素と dependentAssembly 要素は相互に排他的です。1 つの dependency 要素に対して一方は存在する必要がありますが、両方が存在してはいけません。

dependentAssembly には以下の属性があります。

属性 説明
dependencyType 必須。 依存関係の種類を指定します。 有効値は prerequisite または install です。 install アセンブリは、ClickOnce アプリケーションの一部としてインストールされています。 ClickOnce アプリケーションをインストールする前に、prerequisite アセンブリがグローバル アセンブリ キャッシュ (GAC) 内に存在している必要があります。
allowDelayedBinding 必須。 実行時にプログラムによってアセンブリを読み込むことができるかどうかを指定します。
group 省略可能。 dependencyType 属性が install に設定されている場合、オンデマンドでのみインストールされるアセンブリの名前付きグループを指定します。 詳細については、「チュートリアル:デザイナーを使用し、ClickOnce 配置 API で必要に応じてアセンブリをダウンロードする」を参照してください。

framework に設定され、dependencyType 属性が prerequisite に設定されている場合、アセンブリを .NET Framework の一部として指定します。 .NET Framework 4 以降のバージョンにインストールする場合、このアセンブリのグローバル アセンブリ キャッシュ (GAC) はチェックされません。
codeBase dependencyType 属性が install に設定されているときには必須です。 依存アセンブリへのパス。 絶対パス、またはマニフェストのコード ベースを基準とした相対パスのいずれかです。 このパスは、アセンブリ マニフェストが有効であるためには、有効な URI である必要があります。
size dependencyType 属性が install に設定されているときには必須です。 依存アセンブリのサイズ (バイト単位)。

assemblyIdentity

必須。 この要素は dependentAssembly 要素の子であり、以下の属性があります。

属性 説明
name 必須。 アプリケーションの名前を識別します。
version 必須。 major.minor.build.revision の形式で、アプリケーションのバージョン番号を指定します。
publicKeyToken 省略可能。 アプリケーションまたはアセンブリが署名されたときに使われた公開キーの、SHA-1 ハッシュ値の最後の 8 バイトを表わす 16 文字の 16 進数文字列を指定します。 カタログの署名に使用される公開キーは、2048 ビット以上である必要があります。
processorArchitecture 省略可能。 プロセッサを指定します。 有効な値は、32 ビット Windows の場合は x86、64 ビット Windows の場合は I64 です。
language 省略可能。 アセンブリの、2 つの部分から成る言語コード (EN-US など) を識別します。

ハッシュ

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 要素が必要です。 依存アセンブリには、プラットフォーム アセンブリとしてグローバル アセンブリ キャッシュにプレインストールされている必要があるアセンブリは含まれません。

次のコード例は、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>

関連項目