구성 요소 규칙이 위반되면 어떻게 되나요?

경우에 따라 작성자는 애플리케이션을 구성 요소로 구성구성 요소 코드 변경에 설명된 대로 구성 요소를 만들기 위한 규칙을 위반해야 한다고 결정할 수 있습니다. 작성자는 이 작업을 수행할 때 발생할 수 있는 결과를 알고 있어야 하며, 그렇지 않으면 해당 구성 요소가 사용자 시스템의 다른 애플리케이션 또는 구성 요소를 손상시킬 수 있는 위치에 설치되지 않도록 해야 합니다.

다음 목록에서는 작성자가 권장 구성 요소 규칙과 가능한 결과를 위반할 수 있는 방법을 설명합니다.

작성자가 구성 요소 코드를 변경하지 않고 구성 요소에 리소스를 추가합니다.

  • 이전 구성 요소와 함께 설치된 제품에는 설치 데이터베이스에 추가된 리소스에 대한 정보가 없습니다.
  • 추가된 리소스가 있는 새 제품과 이전 제품이 모두 동일한 컴퓨터에 설치된 경우 새 제품을 먼저 제거하면 리소스를 남겨 둘 수 있습니다.
  • 추가된 리소스가 없는 이전 제품은 구성 요소의 최신 버전을 복구할 수 없습니다. 이전 제품을 다시 설치해도 추가된 리소스는 복원되지 않습니다.

작성자가 구성 요소 코드를 변경하지 않고 구성 요소에서 리소스를 제거합니다.

  • 새 구성 요소와 함께 설치된 제품에는 설치 데이터베이스에 제거된 리소스에 대한 정보가 없습니다.
  • 리소스 정보가 있는 이전 제품과 새 제품이 모두 동일한 컴퓨터에 설치된 경우 이전 제품을 먼저 제거하면 리소스를 남겨 둘 수 있습니다.
  • 제거된 리소스가 있는 새 제품은 제품의 이전 버전을 복구할 수 없습니다. 새 제품을 다시 설치해도 제거된 리소스는 복원되지 않습니다.

작성자가 구성 요소 코드를 변경하지 않고 이전 버전과 호환되지 않는 파일을 포함합니다.

구성 요소 코드를 변경하지 않고 호환되지 않는 파일을 구성 요소에 포함한 경우 기본 파일 버전 관리를 사용하면 설치 관리자가 호환되지 않는 최신 파일로 원래 파일을 덮어쓰게 됩니다. 이로 인해 원래 파일이 필요한 이전 제품이 손상될 수 있습니다. 구성 요소의 키 경로 파일 버전에 따라 구성 요소 버전이 달라지므로 설치 관리자가 이전 제품을 복구하지 못할 수도 있습니다. 최신 버전의 키 경로 파일이 이미 설치된 경우 설치 관리자는 이전 버전의 구성 요소를 설치하지 않습니다. 자세한 내용은 파일 버전 관리 규칙을 참조하세요. 이 경우 이전 제품을 다시 설치하려면 먼저 새 제품을 제거해야 합니다.

  • 기본 파일 버전 관리를 사용하면 설치 관리자가 호환되지 않는 최신 파일로 원래 파일을 덮어쓰게 됩니다.
  • 원래 파일이 필요한 이전 제품이 손상됩니다.
  • 구성 요소의 키 경로 파일 버전에 따라 구성 요소 버전이 달라지므로 설치 관리자가 이전 제품을 복구하지 못할 수도 있습니다. 최신 버전의 키 경로 파일이 이미 설치된 경우 설치 관리자는 이전 버전의 구성 요소를 설치하지 않습니다. 자세한 내용은 파일 버전 관리 규칙을 참조하세요. 이 경우 이전 제품을 다시 설치하려면 먼저 새 제품을 제거해야 합니다.

작성자가 서로 다른 두 구성 요소에 동일한 리소스를 포함합니다.

두 구성 요소에 같은 이름과 위치의 리소스가 있고 두 구성 요소가 모두 동일한 폴더에 설치된 경우 두 구성 요소를 제거하면 공통 리소스가 제거되어 나머지 구성 요소가 손상됩니다.

  • 두 구성 요소를 제거하면 리소스가 제거되고 다른 구성 요소가 중단됩니다.
  • 구성 요소 참조 계산 메커니즘이 손상됩니다.