다음을 통해 공유


UpgradeCode 사용

UpgradeCode는 주로 주요 업그레이드를 지원하는 데 사용되지만, 소규모 및 부분 업그레이드 패치가 제품 유효성 검사에 UpgradeCode를 사용할 수 있습니다. 주요 업그레이드 중에 FindRelatedProducts, MigrateFeatureStatesRemoveExistingProducts 작업은 이전 버전의 제품을 검색, 마이그레이션 및 제거합니다. FindRelatedProducts 작업은 UpgradeCode, ProductLanguageProductVersion에 기반한 조건을 사용하여 제품을 검색합니다. 이러한 조건은 업그레이드 테이블에 지정됩니다.

FindRelatedProducts 작업에서 사용하는 조건을 고려할 때 UpgradeCode는 단일 제품의 다양한 언어 및 버전에 대해 동일할 수 있습니다. 업그레이드 테이블을 사용하면 버전과 언어 줄을 따라 제품 간에 구분할 수 있기 때문입니다.

동일한 제품의 여러 버전에서 UpgradeCode를 변경할 필요는 없습니다. 각 독립 실행형 제품에는 자체 UpgradeCode가 있어야 합니다. 제품군에는 자체 UpgradeCode도 있어야 합니다. 이렇게 하면 제품군이 업그레이드 테이블의 여러 행을 사용하여 이전 버전의 제품군 또는 독립 실행형 제품을 업그레이드할 수 있습니다.

다음 두 시나리오에서는 UpgradeCode의 사용을 보여 줍니다.

  • 제품 A와 제품 B는 동일한 ProductLanguage, ProductVersionUpgradeCode로 제공되었습니다. 제품 A와 제품 B의 ProductCodes는 서로 다릅니다. 제품에 동일한 UpgradeCode가 할당되었으므로 이전 버전의 제품 A와 이전 버전의 제품 B를 구분하도록 업그레이드 테이블을 작성할 수는 없습니다. 이 경우 제품 B를 무시하는 제품 A의 업그레이드 설치를 수행할 수 없습니다. 이러한 제품은 서로 다른 제품이므로 각각 다른 UpgradeCode가 할당되어야 합니다.
  • 영어 및 프랑스어 버전의 제품 A는 동일한 ProductVersionUpgradeCode와 함께 제공되었습니다. 제품 A의 영어 및 프랑스어 버전에는 서로 다른 ProductLanguagesProductCodes가 있습니다. 영어와 프랑스어 버전이 모두 동일한 UpgradeCode를 공유하더라도 이전 영어 버전만 검색 및 업그레이드하고 이전 프랑스어 버전은 무시하도록 업그레이드 테이블을 작성할 수 있습니다. 제품의 다른 언어 버전은 동일한 UpgradeCode를 사용할 수 있습니다.