정규화된 구성 요소 사용
정규화된 구성 요소는 간접 참조의 방법이며 병렬 기능이 있는 구성 요소를 범주로 그룹화하는 데 사용할 수 있습니다.
전체 경로를 반환하고 정규화된 구성 요소설치하려면 MsiProvideQualifiedComponent 또는 MsiProvideQualifiedComponentEx호출합니다.
모든 정규화된 구성 요소 한정자 및 설명 문자열을 열거하려면 MsiEnumComponentQualifiers호출합니다.
구성 요소를 정규화된 구성 요소 범주로 그룹화하려면
- 정규화된 구성 요소의 새 범주에 포함된 각 구성 요소에 대한 구성 요소 테이블 레코드가 있어야 합니다. 구성 요소 테이블의 필드를 일반 구성 요소와 동일하게 작성합니다. 정규화된 각 구성 요소에는 구성 요소 테이블의 ComponentId 열에 입력된 고유한 구성 요소 ID GUID가 있어야 합니다.
- 자격을 갖춘 각 구성 요소에 대한 텍스트 문자열을 생성합니다. 한정자는 정규화된 구성 요소를 검색할 때 쉽게 생성할 수 있는 고유한 텍스트 문자열이어야 합니다. 예를 들어 범주의 구성 요소가 언어별로 정규화되는 경우 LCID(숫자 로캘 식별자)는 적절한 한정자 문자열입니다.
- 각 적격 구성 요소에 대해 PublishComponent 테이블에 레코드를 추가합니다. 구성 요소 테이블의 구성 요소 열에서 PublishComponent 테이블의 Component_ 열에 정규화된 구성 요소 식별자를 입력합니다. 한정자 열에 정규화된 각 구성 요소의 한정자 문자열을 입력합니다. 사용자에게 표시할 지역화된 문자열을 입력하고 선택적 AppData 열에 정규화된 구성 요소를 설명합니다. 설명 문자열은 숫자 LCID가 아닌 "프랑스어 사전"과 같은 AppData 필드에 배치해야 합니다. 이 구성 요소를 사용하는 기능의 이름을 Feature_ 열에 입력합니다. 이 필드의 기능 식별자도 기능 테이블의 기능 열에 나열되어야 합니다.
- 정규화된 구성 요소의 이 범주에 대한 범주 GUID를 생성합니다. 반드시 유효한 GUID이어야 합니다. GUIDGEN과 같은 유틸리티를 사용하여 GUID를 생성하는 경우 대문자만 포함해야 합니다. 이 범주의 모든 정규화된 구성 요소에 대해 PublishComponent 테이블ComponentId 필드에 범주 GUID를 입력합니다.
다음 예제에서는 정규화된 구성 요소의 "FAX 템플릿" 범주를 구성 요소, 기능 및 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} |
기능 테이블(부분 테이블)
특징 |
---|
팩스 템플릿 |
팩스 템플릿 |
팩스 템플릿 |
팩스 템플릿 |