다음을 통해 공유


제거할 수 없는 패치

패치를 제거할 수 있는지 여부는 패치가 작성된 방법, 패치를 설치하는 데 사용된 Windows Installer 버전 및 패치로 인해 애플리케이션에 변경된 사항에 따라 달라집니다. 패치를 제거할 수 없는 경우 패치를 제거하는 유일한 방법은 전체 애플리케이션을 제거하고 제거되는 패치를 적용하지 않은 상태로 애플리케이션을 다시 설치하는 것입니다.

Windows Installer 버전 3.0을 사용하여 적용된 패치는 패치 제거 섹션에 설명된 대로 명령줄 옵션, MsiRemovePatches 함수 또는 RemovePatches 메서드를 사용하여 패치의 제거를 요청할 수 있습니다. Windows Installer는 MSIPATCHREMOVE 속성에서 제거 대상으로 나열된 각 패치의 제거 가능 여부를 확인합니다. 사용자에게 패치를 제거할 권한이 없거나, 제품에 대해 알 수 없는 패치이거나, 패치 정책이 제거를 허용하지 않거나, 패치가 제거할 수 없는 것으로 표시된 경우, 설치 관리자는 설치 트랜잭션이 실패했음을 나타내는 오류를 반환합니다.

Windows Installer 2.0: 지원되지 않습니다. Windows Installer 3.0 이전 버전의 Windows Installer를 사용하여 적용된 패치는 제거할 수 없습니다.

제거할 수 없는 패치

설치된 애플리케이션에 적용된 패치(.msp 파일)는 다음 경우에 제거할 수 없습니다. 제거할 수 없는 패치를 제거하는 유일한 방법은 패치가 적용된 애플리케이션을 제거한 다음 패치를 다시 적용하지 않고 애플리케이션을 다시 설치하는 것입니다. 이 경우 애플리케이션에서 제거되기를 원치 않는 패치를 다시 적용해야 합니다.

  • Windows Installer 3.0보다 낮은 Windows Installer 버전을 사용하여 적용된 패치는 제거할 수 없습니다.

  • 관리자가 DisablePatchUninstall 정책을 설정한 컴퓨터에 설치된 애플리케이션에 적용된 패치는 제거할 수 없습니다. 이 머신 정책이설정되면 컴퓨터의 어떤 패치도 제거할 수 없으며 이는 관리자라 할지라도 마찬가지입니다.

  • 데이터베이스에 MsiPatchMetadata 테이블이 없는 패치는 제거할 수 없습니다.

  • MsiPatchMetadata 테이블에 다음 행을 포함하지 않는 패치는 제거할 수 없습니다. 회사, 속성 및 값의 다른 값에 대해서는 패치를 제거할 수 없습니다.

    회사 속성
    {Null} AllowRemoval 1

     

  • 패치가 사용자에게 패치를 제거할 권한이 부족한 컨텍스트에서 설치된 애플리케이션에 적용되었습니다. 다음 표에서 “허용되지 않음”이라는 단어는 관리자 또는 관리자 아닌 사용자가 이 컨텍스트에서 설치된 패치 적용 애플리케이션에서 패치를 제거할 수 없음을 나타냅니다. 이 표의 “허용됨”이라는 단어는 권한으로 인해 관리자 또는 비관리자가 패치를 제거하지 못하는 것은 아니지만 이 섹션에서 설명하는 다른 이유로 패치를 제거할 수 없을 수도 있음을 의미합니다.

    애플리케이션 설치 컨텍스트 관리자가 패치 제거 비관리자가 패치 제거
    머신당 허용됨 일반적으로 허용되지 않음 유일한 예외는 패치를 (LUA) 패칭을 사용하여 적용한 경우입니다. LUA 패치로 표시된 패치는 관리자 또는 비관리자가 제거할 수 없습니다. LUA 패칭은 미디어에서 머신별로 설치된 패키지에만 사용할 수 있으며 특별한 작성이 필요합니다.
    현재 사용자에 대한 사용자별 비관리형 허용됨 허용됨
    다른 사용자에 대한 사용자별 비관리형 허용되지 않음 허용되지 않음
    현재 사용자에 대한 사용자별 관리형 허용됨 허용되지 않음
    다른 사용자에 대한 사용자별 관리형 허용되지 않음 허용되지 않음

     

  • 패치에 의해 적용된 주요 업그레이드는 제거할 수 없습니다. 애플리케이션의 주요 업그레이드를 수행하려면 패치가 아닌 업그레이드된 애플리케이션(.msi 파일)을 설치해야 합니다.

  • 관리 설치에 적용된 패치는 제거할 수 없습니다. 관리 설치를 패칭하는 것은 권장되지 않습니다. 사용자가 관리 이미지에서 애플리케이션을 설치한 후에는 현재 패치 집합을 사용자의 컴퓨터에 적용해야 합니다. 이렇게 하면 사용자 컴퓨터에 캐시된 패키지 코드가 관리자 설치의 패키지 코드와 달라지는 것을 방지할 수 있습니다. 사용자 컴퓨터에 캐시된 패키지 코드가 관리자 설치의 패키지 코드와 다른 경우 관리자 설치에서 애플리케이션을 다시 설치한 다음 클라이언트 컴퓨터를 패치합니다.

  • 패치가 다음 목록의 테이블에 새 콘텐츠를 추가하는 경우 Windows Installer는 해당 패치를 제거할 수 없는 것으로 표시합니다. 제거할 수 없는 패치는 이 목록에 포함되지 않은 데이터베이스 테이블에 새 행을 추가하여 설치에 새 파일, 어셈블리, 레지스트리 항목, 구성 요소 또는 기능을 추가할 수 있습니다.

패치 시퀀싱

패치 삭제

패치 제거

패치 제거 사용자 지정 작업

MSIPATCHREMOVE

MsiEnumapplicationsEx

MsiGetPatchInfoEx

MsiRemovePatches