다음을 통해 공유


구성 요소 코드 변경

설치에 구성 요소를 지정할 때 패키지 작성자는 애플리케이션을 구성 요소 구성 요소 조직에 설명된 일반 규칙을 따라야 합니다. 작성자는 새 구성 요소를 도입하거나 기존 구성 요소를 수정해야 할 수 있습니다. 리소스의 추가, 제거 또는 수정으로 인해 새 구성 요소가 효과적으로 만들어지면 구성 요소 코드도 변경해야 합니다.

새 구성 요소 만들기

새 구성 요소를 소개하고 다음 중에서 변경할 때 고유한 구성 요소 코드를 할당합니다.

  • 이전 버전의 구성 요소와 호환되도록 테스트하여 표시되지 않은 변경 내용입니다. 이 경우 구성 요소에 있는 모든 리소스의 이름 또는 대상 위치도 변경해야 합니다.
  • 구성 요소의 파일, 레지스트리 키, 바로 가기 또는 기타 리소스의 이름 또는 대상 위치 변경 이 경우 구성 요소에 있는 모든 리소스의 이름 또는 대상 위치도 변경해야 합니다.
  • 구성 요소에서 파일, 레지스트리 키, 바로 가기 또는 기타 리소스를 추가하거나 제거합니다. 이 경우 구성 요소에 있는 모든 리소스의 이름 또는 대상 위치도 변경해야 합니다.
  • 32비트 구성 요소를 64비트 구성 요소로 다시 컴파일합니다.

새 구성 요소를 도입할 때 작성자는 다음 중 하나를 수행하여 구성 요소가 기존 구성 요소와 충돌하지 않도록 해야 합니다.

  • 다른 구성 요소에서 동일한 이름 및 대상 위치에 설치할 수 있는 리소스의 이름 또는 대상 위치를 변경합니다.
  • 그렇지 않으면 새 구성 요소가 일반 이름 및 위치 아래에 리소스가 있는 다른 구성 요소와 동일한 폴더에 설치되지 않도록 보장합니다. 여기에는 파일 이름이 같은 지역화된 파일 버전이 포함됩니다. 자세한 내용은 구성 요소 규칙이 손상되면 어떻게 되나요?.
  • 기존 구성 요소의 구성 요소 코드를 변경하는 경우 구성 요소의 모든 파일, 레지스트리 키, 바로 가기 및 기타 리소스의 이름 또는 대상 위치도 변경합니다.

구성 요소의 새 버전 만들기

구성 요소의 새 버전에는 다른 기존 구성 요소와 동일한 구성 요소 코드가 할당됩니다. 구성 요소 코드를 변경하지 않고 구성 요소를 수정하는 것은 다음 경우에 선택 사항입니다.

  • 구성 요소의 변경 내용은 이전 버전의 모든 구성 요소와 호환되도록 테스트하여 입증되었습니다.
  • 작성자는 이전 버전이 필요한 구성 요소 또는 애플리케이션의 이전 버전과 충돌하는 시스템에 구성 요소의 새 버전이 설치되지 않도록 보장할 수 있습니다. 자세한 내용은 구성 요소 규칙이 손상되면 어떻게 되나요?.

레지스트리 값, 파일 또는 바로 가기와 같은 두 구성 요소가 리소스를 공유하는 경우 구성 요소의 새 버전의 구성 요소 코드를 변경해서는 안 됩니다.