애플리케이션 초기화
설치 관리자 기능을 사용하도록 설정하려면 애플리케이션이 초기화할 때 여러 함수를 호출해야 합니다. 자세한 내용은 설치 메커니즘을 참조하세요. 다음 단계에서는 설치 관리자를 사용하여 애플리케이션을 초기화하는 방법을 설명합니다.
애플리케이션을 초기화하려면 다음을 수행합니다.
애플리케이션이 설치 관리자에게 자신을 식별할 수 있도록 MsiGetProductCode 함수를 호출합니다.
제품 코드는 많은 설치 관리자 함수에 필요한 매개 변수입니다.
MsiGetUserInfo 함수를 호출하여 애플리케이션이 처음 시작될 때 사용자 정보를 수집합니다.
MsiGetUserInfo에 대한 호출이 실패하면 MsiCollectUserInfo 함수를 호출하여 사용자 정보를 수집합니다.
필요한 경우 MsiSetInternalUI 함수를 호출하여 기본 사용자 인터페이스를 표시합니다.
사용자 인터페이스를 직접 작성하려면 MsiSetExternalUI 함수를 호출하여 설치 관리자에 등록합니다.
MsiEnableLog 함수를 호출하여 로깅 수준을 설정합니다.
애플리케이션의 기능을 열거하여 사용 가능한 기능을 사용자에게 제공합니다. 다음과 같은 방법으로 기능을 열거할 수 있습니다.
- 기능별로 설치 관리자를 쿼리합니다. 예를 들어 애플리케이션이 단추 또는 메뉴 항목을 그리기 전에 애플리케이션은 MsiQueryFeatureState 함수를 호출하여 설치 관리자가 해당 기능을 사용할 수 있는지 확인할 수 있습니다.
- MsiEnumFeatures 함수를 호출하여 사용 가능한 모든 기능을 한 번에 열거합니다. 이 함수를 사용하려면 애플리케이션에서 인덱스를 증가시키는 동안 MsiEnumFeatures를 반복적으로 호출해야 합니다.
다음 열거형 함수를 반복적으로 호출하고 각 호출에 대한 인덱스 변수를 증가시켜 현재 설치에 대한 자세한 정보를 가져옵니다.
- MsiEnumProducts 함수를 호출하여 설치 관리자에 등록된 제품을 열거합니다.
- MsiEnumComponents 함수를 호출하여 구성 요소를 열거합니다.
- MsiEnumComponentQualifiers 함수를 호출하여 구성 요소 한정자를 열거합니다.
- MsiEnumClients 함수를 호출하여 특정 구성 요소에 대한 제품을 열거합니다.
열거형 함수의 반환 값이 ERROR_SUCCESS인 경우 열거할 항목이 더 있으며 증분 인덱스 변수를 사용하여 함수를 다시 호출해야 합니다. 반환 값이 ERROR_NO_MORE_ITEMS인 경우 모든 항목이 열거된 것이므로 함수를 다시 호출하면 안 됩니다.