격리된 애플리케이션

격리된 애플리케이션은 매니페스트와 함께 설치된 자체 설명 애플리케이션입니다. 격리된 애플리케이션은 프라이빗 어셈블리공유 어셈블리를 모두 사용할 수 있습니다.

모든 구성 요소가 병렬 어셈블리 또는 프라이빗 어셈블리 를 공유하는 경우 애플리케이션은 완전히 격리된 것으로 간주됩니다. 병렬 어셈블리가 아닌 일부 구성 요소를 사용하는 경우 부분적으로 격리된 이라고 합니다. 애플리케이션이 병렬 어셈블리가 아닌 일부 구성 요소를 사용하거나 프라이빗 어셈블리를 사용하는 경우 시스템에서 다른 애플리케이션을 설치하거나 제거하면 애플리케이션이 영향을 받을 수 있습니다. 자세한 내용은 Side-by-side 어셈블리 공유를 참조하세요.

개발자는 다음과 같은 이유로 격리된 애플리케이션을 디자인하고 기존 애플리케이션을 격리된 애플리케이션으로 업데이트하는 것이 좋습니다.

  • 격리된 애플리케이션은 시스템에서 다른 애플리케이션의 설치, 제거 또는 업그레이드의 영향을 받지 않으므로 보다 안정적이고 안정적으로 업데이트됩니다.
  • 격리된 애플리케이션은 빌드 및 테스트된 동일한 어셈블리 버전을 사용하여 항상 실행되도록 설계할 수 있습니다.
  • 격리된 애플리케이션은 Microsoft에서 사용할 수 있는 병렬 어셈블리에서 제공하는 기능을 사용할 수 있습니다. 자세한 내용은 지원되는 Microsoft Side-by-side 어셈블리를 참조하세요.
  • 애플리케이션 및 관리자는 애플리케이션을 다시 설치하지 않고도 배포 후 구성을 업데이트할 수 있으므로 격리된 애플리케이션은 병렬 어셈블리의 배송 일정에 연결되지 않습니다. 어셈블리 버전을 하나만 사용할 수 있는 경우에는 적용되지 않습니다.
  • xcopy 명령을 사용하여 완전히 격리된 애플리케이션을 설치할 수 있습니다. Windows Installer를 사용하여 레지스트리에 영향을 주지 않고 격리된 애플리케이션을 설치할 수도 있습니다. 자세한 내용은 Win32 어셈블리 설치를 참조하세요.

경우에 따라 애플리케이션 코드를 다시 작성하지 않고도 기존 애플리케이션을 격리된 애플리케이션으로 업데이트할 수 있습니다. 병렬 어셈블리에 대한 애플리케이션의 종속성을 설명하는 애플리케이션 매니페스트를 만들 수 있습니다. 애플리케이션이 병렬 어셈블리가 아닌 구성 요소를 사용하는 경우 프라이빗 어셈블리로 배포될 수 있습니다. 구성 요소를 어셈블리로 작성해야 하므로 타사 구성 요소에서 이 작업을 수행할 가능성은 라이선스에 따라 달라질 수 있습니다. 예를 들어 애플리케이션 매니페스트를 만들고 병렬 공용 컨트롤(COMCTL32)에 대한 의존도를 지정하면 Windows XP에서 실행되는 애플리케이션이 Windows 테마를 활용할 수 있습니다. 항상 애플리케이션을 테스트하여 새 버전의 COMCTL32 어셈블리와 호환되는지 확인해야 합니다.

모든 기존 애플리케이션을 완전히 격리된 애플리케이션으로 업데이트하는 것은 불가능할 수 있습니다. 예를 들어 일부 WFP(Windows 파일 보호) 시스템 어셈블리는 병렬 어셈블리로 사용할 수 없으며 애플리케이션과 함께 프라이빗 어셈블리로 설치할 수 없습니다. 애플리케이션 매니페스트에서 애플리케이션의 일부 어셈블리에 대한 병렬 어셈블리 종속성을 지정하여 이러한 애플리케이션을 부분적으로 격리할 수 있습니다.