다음을 통해 공유


<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 요소는 함께 사용할 수 없습니다. dependency 요소에는 두 요소 중 하나가 반드시 있어야 하지만 두 요소를 함께 사용할 수는 없습니다.

dependentOS는 다음과 같은 특성을 지원합니다.

특성

설명

supportUrl

선택적 요소로서, 종속 플랫폼의 지원 URL을 지정합니다. 이 URL은 필요한 플랫폼을 찾은 경우 사용자에게 표시됩니다.

description

선택적 요소로서, dependentOS 요소에서 설명하는 운영 체제를 사람이 읽을 수 있는 형식으로 설명합니다.

osVersionInfo

필수적 요소로서, 이 요소는 dependentOS 요소의 자식이고 os 요소를 포함합니다. 이 요소에는 특성이 없습니다.

os

필수적 요소로서, 이 요소는 osVersionInfo 요소의 자식입니다. 이 요소에는 다음과 같은 특성이 있습니다.

특성

설명

majorVersion

필수적 요소로서, OS의 주 버전 번호를 지정합니다.

minorVersion

필수적 요소로서, OS의 부 버전 번호를 지정합니다.

buildNumber

필수적 요소로서, OS의 빌드 번호를 지정합니다.

servicePackMajor

필수적 요소로서, OS의 서비스 팩 주 번호를 지정합니다.

servicePackMinor

선택적 요소로서, OS의 서비스 팩 부 번호를 지정합니다.

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에는 다음과 같은 특성이 있습니다.

특성

설명

dependencyType

필수적 요소로서, 종속성 형식을 지정합니다. 유효한 값은 preprequisite 및 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

선택적 요소로서, 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 요소가 있어야 합니다. 전역 어셈블리 캐시에 플랫폼 어셈블리로 사전 설치해야 하는 어셈블리는 종속 어셈블리에 포함되지 않습니다.

예제

다음 코드 예제에서는 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 배포)