ICE30
ICE30은 동일한 파일을 포함하는 구성 요소를 설치해도 동일한 디렉터리에 파일을 두 번 이상 설치하지 않는지 확인합니다.
ICE30은 구성요소 테이블의 모든 구성 요소로 이동한 다음, Directory 테이블에서 구성 요소의 대상 디렉터리를 결정합니다. 그런 다음, 이러한 구성 요소 중 동일한 대상 디렉터리에 설치되는 구성 요소를 확인합니다. 마지막으로 파일 테이블을 사용하여 이러한 구성 요소에 동일한 이름을 가진 파일이 없는지 확인합니다.
ICE30은 LFN(긴 파일 이름)과 SFN(짧은 파일 이름)을 모두 확인합니다.
ICE30은 이러한 속성이 런타임에 변경되고 디렉터리 확인 체계를 변경할 수 있으므로 디렉터리 확인에서 속성을 평가하지 않습니다. 즉, ICE30은 경로에 동일한 속성을 가진 디렉터리로 인한 파일 충돌을 감지할 수 있지만 동일한 값을 가진 두 속성으로 인한 충돌은 감지하지 못합니다.
ICE30은 동일한 디렉터리에 동일한 파일을 설치하는 각 구성 요소 쌍에 대해 오류 메시지를 게시합니다.
표시된 예제는 다음 각 오류를 두 번 반환합니다.
ICE30 오류 또는 경고 | 설명 |
---|---|
오류: 대상 파일 'README.1st'는 SFN 시스템의 두 가지 다른 구성 요소인 'Component1' 및 'Component2'에 의해 'TARGETDIR\PRODUCT'에 설치됩니다. 이로 인해 구성 요소 참조 계산이 중단됩니다. | Component1 및 Component2에는 모두 'READEME.1st'라는 파일이 있습니다. 짧은 파일 이름을 사용하는 경우 설치 프로그램은 Dir1과 Dir2를 모두 같은 디렉터리인 TARGETDIR\PRODUCT에 설치합니다. ICE30은 각 파일에 대해 하나씩 두 개의 오류를 생성합니다. 오류 위치를 표시하는 작성 환경에서 첫 번째 오류는 File 테이블의 한 파일 항목에 있고 두 번째 오류는 다른 파일의 위치에 있습니다. |
오류: 조건부 구성 요소를 설치하면 대상 파일 'README.1st'가 LFN 시스템의 두 가지 다른 구성 요소인 'Component3' 및 'Component4'에 의해 'TARGETDIR\COMMON TOOLS'에 설치됩니다. 이렇게 하면 구성 요소 참조 계산이 중단됩니다. | Component4에는 Component 테이블의 조건 열에 항목이 있으며 Component3은 그렇지 않습니다.
VersionNT가 True이면 Component4가 설치되고 Component3에서 항상 설치하는 Readme.1st와 충돌이 발생합니다. ICE30은 SFN에 대해 한 쌍, LFN에 대해 한 쌍, 총 4개의 오류를 생성합니다. |
경고: 대상 파일 'README.1st'는 SFN 시스템의 두 가지 조건부 구성 요소인 'Component4' 및 'Component5'에 의해 'TARGETDIR\COMMON TOOLS'에 설치될 수 있습니다. 조건이 상호 배타적이지 않으면 구성 요소 참조 계산 시스템이 중단됩니다. | Component4와 Component5 모두 Component 테이블의 조건 열에 항목이 있으므로 이 파일 충돌이 발생하지 않을 수 있습니다. ICE30은 설치 시 조건을 결정해야 하므로 경고만 게시합니다. ICE30은 SFN에 대해 한 쌍, LFN에 대해 한 쌍, 총 4개의 경고를 생성합니다. |
Component 테이블(부분)
구성 요소 | 디렉터리 | 조건 |
---|---|---|
Component1 | Dir1 | |
Component2 | Dir2 | |
Component3 | Dir3 | |
Component4 | Dir3 | VersionNT |
Component5 | Dir3 | Version9X |
디렉터리 | Parent_Directory | DefaultDir |
---|---|---|
SOURCEDIR | TARGETDIR | |
Dir1 | SOURCEDIR | 제품|Component1 제품:. |
Dir2 | SOURCEDIR | 제품: |
Dir3 | SOURCEDIR | 일반|일반적인 도구: |
File 테이블(부분)
파일 | Component_ | FileName |
---|---|---|
File1 | Component1 | README.1st |
File2 | Component2 | README.1st |
File3 | Component3 | README.1st |
File4 | Component4 | README.1st |
File5 | Component5 | README.1st |