다음을 통해 공유


<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 요소를 포함합니다. dependentOSdependentAssembly 요소는 상호 배타적입니다. dependency 요소에 대해 둘 중 하나만 있어야 합니다.

dependentOS에서 다음 특성을 지원합니다.

attribute 설명
supportUrl 선택 사항입니다. 종속 플랫폼의 지원 URL을 지정합니다. 이 URL은 필요한 플랫폼이 있는 경우 사용자에게 표시됩니다.
description 선택 사항. dependentOS 요소가 설명하는 운영 체제를 사람이 읽을 수 있는 형식으로 설명합니다.

osVersionInfo

필수입니다. 이 요소는 dependentOS 요소의 자식이며 os 요소를 포함합니다. 이 요소에는 특성이 없습니다.

os

필수입니다. 이 요소는 osVersionInfo 요소의 자식입니다. 이 요소에는 다음 특성이 있습니다.

attribute Description
majorVersion 필수입니다. OS의 주 버전 번호를 지정합니다.
minorVersion 필수입니다. OS의 부 버전 번호를 지정합니다.
buildNumber 필수입니다. OS의 빌드 번호를 지정합니다.
servicePackMajor 필수입니다. OS의 서비스 팩 주 번호를 지정합니다.
servicePackMinor 선택 사항. OS의 서비스 팩 부 번호를 지정합니다.
productType 선택 사항. 제품 유형 값을 식별합니다. 유효한 값은 server, workstationdomainController입니다. 예를 들어 Windows 10의 경우 이 특성 값은 다음과 같습니다 workstation.
suiteType 선택 사항. 시스템에서 사용할 수 있는 제품군 또는 시스템의 구성 형식을 식별합니다. 유효한 값은 backoffice, blade, datacenter, enterprise, home, professional, smallbusiness, smallbusinessRestrictedterminal입니다. 예를 들어 Windows 2000 Professional의 경우 이 특성 값은 professional입니다.

dependentAssembly

선택 사항입니다. assemblyIdentity 요소를 포함합니다. dependentOSdependentAssembly 요소는 상호 배타적입니다. dependency 요소에 대해 둘 중 하나만 있어야 합니다.

dependentAssembly에는 다음 특성이 있습니다.

attribute Description
dependencyType 필수입니다. 종속성 형식을 지정합니다. 유효한 값은 prerequisiteinstall입니다. install 어셈블리는 ClickOnce 애플리케이션의 일부로 설치됩니다. prerequisite 어셈블리가 GAC(전역 어셈블리 캐시)에 있어야 ClickOnce 애플리케이션에서 설치할 수 있습니다.
allowDelayedBinding 필수입니다. 런타임에 어셈블리를 프로그래밍 방식으로 로드할 수 있는지 지정합니다.
group 선택 사항. dependencyType 특성이 install로 설정된 경우 주문형으로만 설치되는 어셈블리의 명명된 그룹을 지정합니다. 자세한 내용은 연습: 디자이너를 사용하여 ClickOnce 배포 API에서 요청 시 어셈블리 다운로드를 참조하세요.

framework로 설정하고 dependencyType 특성이 prerequisite로 설정된 경우 .NET Framework의 일부로 어셈블리를 지정합니다. .NET Framework 4 이상 버전에 설치할 때 GAC(전역 어셈블리 캐시)는 이 어셈블리에 대해 검사 않습니다.
codeBase dependencyType 특성이 install로 설치된 경우 필수입니다. 종속 어셈블리의 경로입니다. 절대 경로이거나 매니페스트의 코드베이스에 상대적인 경로일 수 있습니다. 어셈블리 매니페스트가 유효하려면 이 경로가 유효한 URI여야 합니다.
size dependencyType 특성이 install로 설치된 경우 필수입니다. 종속 어셈블리의 크기(바이트)입니다.

assemblyIdentity

필수입니다. 이 요소는 dependentAssembly 요소의 자식이며 다음과 같은 특성이 있습니다.

attribute Description
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 요소에는 다음 특성이 있습니다.

attribute 설명
Algorithm 이 파일의 다이제스트를 계산하는 데 사용되는 알고리즘입니다. 현재 ClickOnce에서 사용하는 유일한 값은 urn:schemas-microsoft-com:HashTransforms.Identity입니다.

dsig:DigestMethod

dsig:DigestMethod 요소는 hash 요소의 필수 자식 요소입니다. dsig:DigestMethod 요소에는 다음 특성이 있습니다.

attribute 설명
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>

참고 항목