ICE60

ICE60 检查 文件表中的文件 是否满足以下条件:

  • 如果文件不是字体且具有版本,则必须具有语言。
  • ICE60 检查 MsiFileHash 表中是否未列出任何版本控制的文件。

未能修复 ICE60 报告的警告通常会导致在完成产品修复时需要重新安装文件。 发生这种情况是因为要安装在修复中的文件以及磁盘上的现有文件具有相同版本(它们是相同的文件),但语言不同。 文件表将语言列为 null,但文件本身在资源中具有语言值。 根据 文件版本控制规则,安装程序支持要安装的文件,因此无需重新编码。

结果

如果 文件表中的文件 不是字体且具有版本,则 ICE60 会发布警告或错误,但没有语言。

如果 MsiFileHash 表中列出的文件已进行版本控制,ICE60 将发布以下错误。

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。

文件表(FileB 是字体;其他文件不是。

文件 版本 语言
FileA 1.0 1033
FileB 1.0
FileC FileA
提交
FileE 1.0

 

字体表

文件 FontTitle
FileB 字体标题

 

ICE 参考