다음을 통해 공유


정규화된 구성 요소 사용

정규화된 구성 요소는 간접 참조의 방법이며 병렬 기능이 있는 구성 요소를 범주로 그룹화하는 데 사용할 수 있습니다.

전체 경로를 반환하고 정규화된 구성 요소설치하려면 MsiProvideQualifiedComponent 또는 MsiProvideQualifiedComponentEx호출합니다.

모든 정규화된 구성 요소 한정자 및 설명 문자열을 열거하려면 MsiEnumComponentQualifiers호출합니다.

구성 요소를 정규화된 구성 요소 범주로 그룹화하려면

  1. 정규화된 구성 요소의 새 범주에 포함된 각 구성 요소에 대한 구성 요소 테이블 레코드가 있어야 합니다. 구성 요소 테이블의 필드를 일반 구성 요소와 동일하게 작성합니다. 정규화된 각 구성 요소에는 구성 요소 테이블의 ComponentId 열에 입력된 고유한 구성 요소 ID GUID가 있어야 합니다.
  2. 자격을 갖춘 각 구성 요소에 대한 텍스트 문자열을 생성합니다. 한정자는 정규화된 구성 요소를 검색할 때 쉽게 생성할 수 있는 고유한 텍스트 문자열이어야 합니다. 예를 들어 범주의 구성 요소가 언어별로 정규화되는 경우 LCID(숫자 로캘 식별자)는 적절한 한정자 문자열입니다.
  3. 각 적격 구성 요소에 대해 PublishComponent 테이블에 레코드를 추가합니다. 구성 요소 테이블의 구성 요소 열에서 PublishComponent 테이블의 Component_ 열에 정규화된 구성 요소 식별자를 입력합니다. 한정자 열에 정규화된 각 구성 요소의 한정자 문자열을 입력합니다. 사용자에게 표시할 지역화된 문자열을 입력하고 선택적 AppData 열에 정규화된 구성 요소를 설명합니다. 설명 문자열은 숫자 LCID가 아닌 "프랑스어 사전"과 같은 AppData 필드에 배치해야 합니다. 이 구성 요소를 사용하는 기능의 이름을 Feature_ 열에 입력합니다. 이 필드의 기능 식별자도 기능 테이블의 기능 열에 나열되어야 합니다.
  4. 정규화된 구성 요소의 이 범주에 대한 범주 GUID를 생성합니다. 반드시 유효한 GUID이어야 합니다. GUIDGEN과 같은 유틸리티를 사용하여 GUID를 생성하는 경우 대문자만 포함해야 합니다. 이 범주의 모든 정규화된 구성 요소에 대해 PublishComponent 테이블ComponentId 필드에 범주 GUID를 입력합니다.

다음 예제에서는 정규화된 구성 요소의 "FAX 템플릿" 범주를 구성 요소, 기능 및 PublishComponent 테이블에 작성하는 방법을 보여 줍니다.

PublishComponent 테이블

ComponentId 한정자 AppData 특징_ 구성 요소_
{FAX 템플릿 범주 GUID} 1033 미국 영어 서식 파일 팩스 양식 FAXTemplateENU
  1041 일본어 서식 파일 팩스 템플릿 FAXTemplateJPN
  1054 태국어 서식 파일 팩스 템플릿 FAXTemplateTHA
  1031 독일어 템플릿 팩스 템플릿 FAXTemplateDEU

 

구성 요소 테이블(부분 테이블)

구성 요소 ComponentId
FAXTemplateENU {FAX 템플릿(미국 영어) 구성 요소 GUID}
팩스 템플릿JPN {FAX 템플릿(일본어) 구성 요소 GUID}
FAXTemplateTHA {FAX 템플릿(태국어) 구성 요소 GUID}
FAXTemplateDEU {FAX 템플릿(독일어) 구성 요소 GUID}

 

기능 테이블(부분 테이블)

특징
팩스 템플릿
팩스 템플릿
팩스 템플릿
팩스 템플릿