패키지에 대한 지침

Windows Vista의 UAC(사용자 계정 컨트롤)는 설치 중에 권한을 제한하므로 Windows Installer 패키지 개발자는 설치 시 항상 시스템의 모든 부분에 액세스할 수 있다고 가정해서는 안 됩니다.

그룹 정책을 통해 표준 사용자에게 배포할 수 있는 설치 관리자 패키지는 대부분의 경우 Windows Vista의 UAC에서도 작동해야 합니다. InstallUISequence 테이블LaunchConditions 작업이 포함되어 있거나 LaunchCondition 테이블Privileged 속성을 기반으로 하는 조건이 포함된 경우 예외가 발생할 수 있습니다. 따라서 Windows Installer 패키지 개발자는 다음 지침을 준수하여 패키지가 UAC 및 Windows Vista에서 작동하는지 확인해야 합니다.

  • InstallUISequence table 테이블에 작업과 함께 설치 컨텍스트 조건을 포함하는 경우 Privileged 속성에 따라 조건문을 사용합니다. AdminUser 속성을 기반으로 조건을 사용하지 마세요.
  • 설치 시작 조건에 설치 컨텍스트를 포함하는 경우 InstallExecuteSequence 테이블에서 사용자 지정 작업 유형 19를 사용하고 Privileged 속성에 따라 사용자 지정 작업을 조건부로 만듭니다. AdminUser 속성 또는 Privileged 속성을 기반으로 하는 조건과 함께 LaunchCondition 테이블에서 작업을 사용하지 마세요.
  • 시스템 구성을 읽거나 수정하려면 InstallExecuteSequence 테이블에서 지연된 실행 사용자 지정 작업을 사용합니다. InstallUISequence 테이블에서 즉시 실행 사용자 지정 작업을 사용하여 시스템 구성을 수정하지 마세요.
  • 사용자별이 아닌 시스템의 일부를 수정하려면 InstallExecuteSequence 테이블에서 지연된 사용자 지정 작업을 사용합니다. 사용자 지정 작업 유형에 msidbCustomActionTypeNoImpersonate 비트를 포함해야 합니다.
  • Word Count Summary 속성 값에서 비트 3을 생략하여 패키지를 상승해야 할 수 있음을 나타냅니다. 이 패키지를 설치하는 데 상승된 권한이 필요하지 않은 경우 이 비트를 포함하지 마세요.
  • 애플리케이션의 요청된 실행 수준에 매니페스트를 포함합니다.
  • 원본 패키지의 MsiPatchCertificate 테이블에 인증서를 포함하고 동일한 인증서로 모든 패치에 서명합니다.
  • Windows Installer 패키지를 설치하는 데 관리자 권한이 필요한 경우 패키지 작성자는 설치 시작에 사용되는 PushButton 컨트롤에 대한 ElevationShield 특성을 포함해야 합니다. 이렇게 하면 단추를 클릭했을 때 설치를 계속하기 위해 관리자 권한 부여를 요청하는 UAC 대화 상자가 표시됩니다.
  • MSIDEPLOYMENTCOMPLIANT 속성을 1로 설정하여 Windows Installer에 패키지가 작성되고 Windows Vista의 UAC를 준수하도록 테스트되었음을 나타냅니다. 이 속성이 설정되지 않은 경우 설치 관리자는 패키지가 UAC를 준수하는지 여부를 결정합니다.

그룹 정책 외부에서 Windows XP의 UAC 규정 준수와 관련한 다음 검사를 사용할 수 있습니다.

그룹 정책 외부에서 UAC 규정 준수를 확인하는 방법

  1. 관리자로 컴퓨터에 로그온합니다.

  2. 머신별 설치를 위해 패키지를 보급합니다.

    msiexec /jm package.msi

  3. 컴퓨터에서 로그오프합니다.

  4. 컴퓨터에 표준 사용자로 로그온합니다.

  5. 보급된 패키지를 설치하려고 시도합니다.

    msiexec /i package.msi

  6. 대부분의 경우 설치에 성공하면 패키지는 UAC 규격입니다.

  7. 패키지의 MSIDEPLOYMENTCOMPLIANT 속성을 1로 설정합니다.

  8. Windows Vista를 사용하여 패키지가 올바르게 설치되었는지 테스트합니다.