ICE92

ICE92는 구성 요소 ID GUID가 없는 구성 요소도 영구 구성 요소로 지정되지 않는지 확인합니다. 이 ICE 사용자 지정 작업은 ComponentId 필드에 GUID가 지정되지 않은 구성 요소에 대한 구성 요소 테이블을 확인하고 특성 필드에 msidbComponentAttributesPermanent 플래그가 설정되지 않은지 확인합니다. 또한 ICE92는 구성 요소에 msidbComponentAttributesPermanentmsidbComponentAttributesUninstallOnSupersedence 특성이 모두 없는지 확인합니다.

ComponentId 열이 null이면 설치 관리자가 구성 요소를 등록하지 않으며 설치 관리자가 구성 요소를 제거하거나 복구할 수 없습니다.

결과

ICE92는 다음 오류를 게시합니다.

ICE92 오류 Description
구성 요소 ' [ 1 ] '에는 ComponentId가 없으며 영구로 표시됩니다. Component 테이블의 이 구성 요소 항목은 ComponentId 열에 null이고 특성 열에 msidbComponentAttributesPermanent가 있습니다.

ICE92는 다음 경고를 게시합니다.

ICE92 경고 Description
구성 요소 ' [ ] 1'은 영구 및 제거로 표시됩니다. 구성 요소가 영구적이므로 uninstall-on-supersedence 특성이 무시됩니다. 구성 요소 테이블의 이 구성 요소 항목에는 msidbComponentAttributesPermanentmsidbComponentAttributesUninstallOnSupersedence 특성이 모두 지정되어 있습니다.

예제

ICE92는 예제에 대해 다음 오류를 보고합니다.

The Component 'Component1' has no ComponentId and is marked as permanent.

구성 요소 테이블(부분)

구성 요소 ComponentId 디렉터리_ 특성 Keypath
Component1 DirectoryA 16 FileA

ICE 참조