ICE60

ICE60은 File 테이블의 파일이 다음 조건을 충족하는지 확인합니다.

  • 파일이 글꼴이 아니고 버전이 있는 경우 언어가 있어야 합니다.
  • ICE60은 MsiFileHash 테이블에 버전이 지정된 파일이 나열되지 않았는지 확인합니다.

ICE60에서 보고한 경고를 수정하지 못하면 일반적으로 제품 복구가 완료될 때 파일이 불필요하게 다시 설치됩니다. 이 문제는 복구에 설치할 파일과 디스크의 기존 파일이 동일한 버전(동일한 파일임)을 가지지만 언어가 다르기 때문에 발생합니다. 파일 테이블에는 언어가 null로 나열되지만 파일 자체에는 리소스의 언어 값이 있습니다. 파일 버전 관리 규칙에 따라 설치 관리자는 파일을 설치하는 것을 선호하므로 불필요하게 다시 복사됩니다.

결과

ICE60은 글꼴이 아니고 버전이 있는 파일 테이블에 언어가 없는 경우 경고 또는 오류를 게시합니다.

ICE60은 MsiFileHash 테이블에 나열된 파일의 버전이 지정된 경우 다음 오류를 게시합니다.

ERROR: "The file [1] is Versioned. It cannot be hashed"

ICE60은 표시된 예제에 대해 다음과 같은 오류 및 경고를 보고합니다. (파일 B는 글꼴이고 다른 파일은 글꼴이 아닙니다.)

WARNING: The file FileE is not a Font, and its version is not a companion file reference. It should have a language specified in the Language column.

FileA에는 버전과 언어가 모두 있습니다. 따라서 경고 또는 오류가 생성되지 않습니다.

FileB에는 버전이 있지만 언어는 없습니다. 그러나 글꼴이므로 경고 또는 오류가 생성되지 않습니다.

FileC는 도우미 참조이므로 언어가 있을 필요가 없습니다. 경고 또는 오류가 생성되지 않습니다.

FileD에는 버전이 없으므로 언어가 필요하지 않습니다. 경고 또는 오류가 생성되지 않습니다.

FileE에는 버전이 있지만 언어는 없습니다. 따라서 경고가 생성됩니다.

이 경고를 해결하려면 FileE에 언어를 추가합니다.

파일에는 가능하면 버전 리소스에 저장된 언어 값이 있어야 합니다. 파일이 언어 중립적인 경우 LANGID 0을 사용합니다.

File 테이블(FileB는 글꼴이고 다른 파일은 글꼴이 아닙니다.)

파일 버전 언어
FileA 1.0 1033
FileB 1.0
FileC FileA
FileD
FileE 1.0

 

Font 테이블

파일 FontTitle
FileB 글꼴 제목

 

ICE 참조