다음을 통해 공유


테이블 업그레이드

업그레이드 테이블에는 주요 업그레이드동안 필요한 정보가 포함되어 있습니다. 설치 관리자의 업그레이드 기능을 완전히 사용하도록 설정하려면 모든 패키지에 UpgradeCode 속성과 업그레이드 테이블이 있어야 합니다. 업그레이드 테이블의 각 레코드는 업그레이드의 영향을 받는 제품 집합을 식별하는 데 사용되는 업그레이드 코드, 제품 버전 및 언어 정보의 특징 조합을 제공합니다. FindRelatedProducts 작업이 시스템에 설치된 영향을 받는 제품을 검색하면 ActionProperty 열에 지정된 속성에 제품 코드를 추가합니다. RemoveExistingProducts 작업 및 MigrateFeatureStates 작업은 ActionProperty 열에 나열된 제품만 제거하거나 마이그레이션합니다.

업그레이드 테이블에는 다음 표에 표시된 열이 포함되어 있습니다.

열쇠 Nullable
UpgradeCode GUID Y N
VersionMin 텍스트 Y Y
VersionMax 텍스트 Y Y
언어 텍스트 Y Y
특성 정수 Y N
제거하다 서식이 지정된 N Y
ActionProperty 식별자 N N

 

UpgradeCode

이 열의 UpgradeCode 속성은 FindRelatedProducts 작업에서 검색할 모든 제품의 업그레이드 코드를 지정합니다.

VersionMin

FindRelatedProducts검색된 제품 버전 범위의 하위 경계입니다. 특성에 msidbUpgradeAttributesVersionMinInclusive 입력하여 범위에 VersionMin을 포함합니다. VersionMin이 빈 문자열("")과 같으면 0과 동일하게 평가됩니다. VersionMin이 null이면 FindRelatedProducts는 msidbUpgradeAttributesVersionMinInclusive 무시하고 모든 이전 버전을 검색합니다. VersionMin과 VersionMax가 모두 null이 아니어야 합니다.

VersionMin은 ProductVersion 속성에 설명된 대로 유효한 제품 버전이어야 합니다. Windows Installer는 제품 버전의 처음 세 필드만 사용합니다. 제품 버전에 네 번째 필드를 포함하면 설치 관리자는 네 번째 필드를 무시합니다.

VersionMax

FindRelatedProducts 작업에 의해 검색된 제품 버전 범위의 상한입니다. 특성에 msidbUpgradeAttributesVersionMaxInclusive 입력하여 범위에 VersionMax를 포함합니다. VersionMax가 빈 문자열("")인 경우 0과 동일하게 평가됩니다. VersionMax가 null이면 FindRelatedProducts는 msidbUpgradeAttributesVersionMaxInclusive 무시하고 VersionMin 및 msidbUpgradeAttributesVersionMinInclusive지정된 하한보다 크거나 같은 모든 제품 버전을 검색합니다. VersionMin과 VersionMax가 모두 null이 아니어야 합니다.

VersionMax는 ProductVersion 속성에 대해 설명된 대로 유효한 제품 버전이어야 합니다. Windows Installer는 제품 버전의 처음 세 필드만 사용합니다. 제품 버전에 네 번째 필드를 포함하면 설치 관리자는 네 번째 필드를 무시합니다.

언어

FindRelatedProducts에서 검색한 언어 집합은. 쉼표로 구분된 LANGID(숫자 언어 식별자) 목록을 입력합니다. 특성에 msidbUpgradeAttributesLanguagesExclusive 입력하여 언어에 나열된 언어 외의 모든 언어를 검색합니다. Language가 null이거나 빈 문자열("")인 경우 FindRelatedProducts는 msidbUpgradeAttributesLanguagesExclusive 무시하고 모든 언어를 검색합니다.

특성

이 열에는 업그레이드 테이블의 특성을 지정하는 비트 플래그가 포함되어 있습니다.

비트 플래그 이름 십진법 16 진수 속성
msidbUpgradeAttributesMigrateFeatures 1 0x001 MigrateFeatureStates 작업에서 논리를 사용하도록 설정하여 기능 상태를 마이그레이션합니다.
msidbUpgradeAttributesOnlyDetect 2 0x002 제품 및 애플리케이션을 검색하지만 제거하지는 않습니다.
msidbUpgradeAttributesIgnoreRemoveFailure 4 0x004 제품 또는 애플리케이션을 제거하지 못하면 설치를 계속합니다.
msidbUpgradeAttributesVersionMinInclusive 256 0x100 VersionMin의 값을 포함하여 버전 범위를 검색합니다.
msidbUpgradeAttributesVersionMaxInclusive 512 0x200 VersionMax의 값을 포함하여 버전 범위를 검색합니다.
msidbUpgradeAttributesLanguagesExclusive 1024 0x400 언어 열에 나열된 언어를 제외한 모든 언어를 검색합니다.

 

제거

설치 관리자는 REMOVE 속성을 이 열에 지정된 기능으로 설정합니다. 제거할 기능은 런타임에 확인할 수 있습니다. 이 필드에 입력된 형식이 지정된 문자열은 쉼표로 구분된 기능 이름 목록으로 평가되어야 합니다. 예: [Feature1],[Feature2],[Feature3]. 필드에 빈 문자열("")로 계산되는 서식이 지정된 텍스트가 포함되어 있으면 기능이 제거되지 않습니다. 제거 필드가 비어 있는 경우에만 설치 관리자가 REMOVE=ALL을 설정합니다. 빈 문자열과 빈 필드의 차이점을 확인합니다. 필드가 비어 있으면 null입니다.

ActionProperty

FindRelatedProducts 작업에서 시스템에 설치된 관련 제품을 검색하면 이 필드에 지정된 속성에 제품 코드가 추가됩니다. 이 열에 지정된 속성은 public 속성이어야 하며 패키지 작성자는 SecureCustomProperties 속성에 속성을 추가해야 합니다. 업그레이드 테이블의 각 행에는 고유한 ActionProperty 값이 있어야 합니다. FindRelatedProducts 후에 이 속성의 값은 시스템에서 검색된 세미콜론(;))으로 구분된 목록 제품 코드입니다.

유효성 검사

ice03
ICE06
ICE46
ICE61
ICE66