설치 원본 관리

관리자 권한이 있는 사용자 및 애플리케이션은 시스템의 Windows Installer 애플리케이션 및 패치에 대한 네트워크, URL 및 미디어 원본 목록 정보를 검색하고 수정할 수 있습니다.

Windows Installer 2.0: 지원되지 않습니다. 관리자는 원본 목록에서 항목을 읽거나 다시 정렬하거나 바꿀 수 없으며 원본 목록 속성을 수정하거나 검색할 수 없습니다. 네트워크 원본은 관리할 수 있지만 URL 또는 미디어 원본은 관리할 수 없습니다. 관리자는 현재 사용자의 사용자별로 설치된 컴퓨터별 애플리케이션 또는 애플리케이션에 대한 원본 목록만 관리할 수 있습니다. 이렇게 하면 Windows Installer 버전 3.0 이전 버전을 사용하는 관리자가 시스템의 모든 사용자에 대한 원본 목록 정보를 관리할 수 없습니다.

Windows Installer 3.0 이상: 관리자 권한이 있는 사용자 및 애플리케이션은 모든 사용자에 대해 시스템에 설치된 Windows Installer 애플리케이션 및 패치에 대한 원본 목록 정보를 검색하고 수정할 수 있습니다. 원본 목록 함수를 사용하여 네트워크, URL 및 미디어 원본에 대한 원본 목록 및 원본 목록 속성을 관리할 수 있습니다. 설치 관리자는 외부 프로세스에서 원본 목록의 순서를 변경할 수 있습니다.

관리자 권한이 있는 사용자 및 애플리케이션은 다음 유형의 원본 목록 정보를 읽고 수정할 수 있습니다.

  • 시스템의 모든 사용자에 대해 설치된 애플리케이션 및 패치의 원본 목록입니다.
  • 애플리케이션 원본과 별도로 존재하는 패치 원본에 대한 원본 목록입니다.
  • 네트워크 원본과는 별도로 존재하는 URL 및 미디어 원본에 대한 원본 목록입니다.
  • MEDIAPACKAGEPATH, DiskPrompt, LastUsedSource, LastUsedTypePackageName과 같은 원본 목록 속성입니다.

원본 목록 함수는 설치 컨텍스트 및 사용자 컨텍스트를 지정하여 찾은 원본 목록의 범위를 제한할 수 있습니다. 세 가지 가능한 설치 컨텍스트는 사용자당(관리되지 않음), 컴퓨터별 및 사용자별 관리형입니다. 사용자 컨텍스트는 시스템의 특정 사용자 또는 모든 사용자일 수 있습니다.

관리자가 아닌 사용자는 다른 사용자의 사용자별(관리형 또는 관리되지 않는) 컨텍스트에 있는 애플리케이션 또는 패치 인스턴스의 원본 목록을 수정할 수 없습니다. 관리자가 아닌 사용자는 다음 컨텍스트에 따라 설치된 애플리케이션 또는 패치 인스턴스의 원본 목록을 수정할 수 있습니다.

관리자는 관리자가 아닌 사용자가 수정할 수 있는 모든 원본 목록을 수정할 수 있습니다. 또한 관리자 및 관리자 권한이 있는 애플리케이션은 다음 컨텍스트에 따라 설치된 애플리케이션 또는 패치의 원본 목록을 수정할 수 있습니다.

  • 컴퓨터별 컨텍스트입니다.
  • 고유한 사용자별(관리되지 않는) 또는 사용자별 관리형 컨텍스트입니다.
  • 다른 사용자의 사용자별 관리되는 컨텍스트입니다.

참고

관리자 권한이 있는 사용자 및 애플리케이션은 다른 사용자의 사용자별(관리되지 않는) 컨텍스트에 설치된 애플리케이션 또는 패치 인스턴스의 원본 목록을 수정할 수 없습니다.

 

제품 및 패치에 대한 네트워크 및 URL 원본 관리

MsiSourceListAddSourceEx 함수를 사용하여 특정 컨텍스트에서 패치 또는 애플리케이션에 대한 네트워크 및 URL 원본의 원본 목록을 추가하거나 순서를 변경합니다. dwContext 매개 변수를 사용하여 설치 컨텍스트를 지정합니다. szUserSid 매개 변수를 사용하여 사용자 컨텍스트를 지정합니다.

MsiSourceListAddSourceEx 함수를 사용하여 지정된 컨텍스트의 애플리케이션에 아직 적용되지 않은 패치에 대한 원본 목록을 만듭니다. 이는 상승된 권한을 가지도록 패치를 등록할 때 유용할 수 있습니다. 패치에 대한 상승된 권한을 등록하는 방법에 대한 자세한 내용은 패치 Per-User 관리되는 애플리케이션을 참조하세요.

MsiSourceListClearSource 함수를 사용하여 지정된 컨텍스트에서 애플리케이션 또는 패치에 대한 기존 소스를 제거합니다. 애플리케이션 또는 패치에 대한 현재 원본을 제거하면 다음에 원본이 필요할 때 설치 관리자가 원본 목록을 검색하도록 합니다.

MsiSourceListEnumSources 함수를 사용하여 지정된 패치 또는 애플리케이션의 원본 목록에서 원본을 열거합니다.

제품 및 패치에 대한 미디어 원본 관리

MsiSourceListAddMediaDisk 함수를 사용하여 등록된 애플리케이션 또는 패치의 미디어 원본에 대한 디스크 정보를 추가하거나 업데이트합니다. 각 항목은 디스크 ID로 고유하게 식별됩니다. 디스크가 이미 있는 경우 새 볼륨 레이블 및 디스크 프롬프트 값으로 업데이트됩니다. 디스크가 없으면 새 값으로 새 디스크 항목이 만들어집니다.

MsiSourceListClearMediaDisk 함수를 사용하여 특정 컨텍스트에서 애플리케이션 또는 패치에 대한 미디어 원본 아래에 있는 기존 등록된 디스크를 제거합니다.

MsiSourceListEnumMediaDisks 함수를 사용하여 애플리케이션 또는 패치에 대한 미디어 원본 아래에 등록된 디스크 목록을 열거합니다.

원본 목록 정보 검색 및 수정

MsiSourceListGetInfoMsiSourceListSetInfo 함수를 사용하여 특정 컨텍스트에서 애플리케이션 또는 패치의 원본 목록에 대한 정보를 검색하거나 수정합니다. dwContext 매개 변수를 사용하여 설치 컨텍스트를 지정합니다. szUserSid 매개 변수를 사용하여 사용자 컨텍스트를 지정합니다.

MEDIAPACKAGEPATH, DiskPrompt, LastUsedSource, LastUsedTypePackageName과 같은 원본 목록 속성에 액세스할 수 있습니다.

참고

LastUsedType 원본 목록 속성은 읽기만 가능합니다. MsiSourceListSetInfo 함수를 사용하여 직접 설정할 수 없습니다.

 

전체 원본 목록 지우기 또는 원본 확인 강제 실행

MsiSourceListClearAllEx 함수를 사용하여 지정된 애플리케이션 또는 패치 인스턴스에 대해 지정된 소스 형식의 기존 원본을 모두 제거합니다. 동일한 컨텍스트의 애플리케이션에서 패치를 설치하지 않은 경우에도 패치 등록이 제거됩니다. dwContext 매개 변수를 사용하여 설치 컨텍스트를 지정합니다. szUserSid 매개 변수를 사용하여 사용자 컨텍스트를 지정합니다.

MsiSourceListForceResolutionEx를 사용하여 지정된 컨텍스트에서 애플리케이션 또는 패치에 대해 마지막으로 사용한 원본 항목을 지울 수 있습니다. 이 함수는 LastUsedSource라는 속성의 등록을 제거합니다. 이 함수는 등록된 원본 목록에 영향을 주지 않습니다. LastUsedSource 등록을 지우면 다음에 원본이 필요할 때 설치 관리자가 등록된 원본에 대해 원본 확인을 수행하도록 합니다.