我在我的WiX脚本中添加了一个文件,路径名中包含字符“î”。Light.exe会报错:
“提供的字符串包含指定数据库代码页'1252'中不可用的字符”
疑问的字符在Windows-1252编码中为0xEE,即0x00EE Unicode或0xC3AE UTF-8。这些文件位于由heat.exe生成的wxs文件中,而此xml以UTF-8编码。
我认为错误消息来自于它尝试以UTF编码输入字符,而数据库是1252?由于Windows Installer实际上不支持UTF(如WiX文档所述),我应该使用以1252或iso-8859编码的输入xml吗?如果是这样,我能告诉heat.exe使用其输出的另一种编码吗?
“提供的字符串包含指定数据库代码页'1252'中不可用的字符”
疑问的字符在Windows-1252编码中为0xEE,即0x00EE Unicode或0xC3AE UTF-8。这些文件位于由heat.exe生成的wxs文件中,而此xml以UTF-8编码。
我认为错误消息来自于它尝试以UTF编码输入字符,而数据库是1252?由于Windows Installer实际上不支持UTF(如WiX文档所述),我应该使用以1252或iso-8859编码的输入xml吗?如果是这样,我能告诉heat.exe使用其输出的另一种编码吗?
我的问题类似于这个问题:Leveraging heat.exe and harvest already localized file names and including them to msi using wix">利用heat.exe和收集本地化的文件名将它们包含到msi中使用wix,但不同之处在于,在那种情况下,字符是“真正”的非ansi字符,而在我的情况下,该字符可以在1252中正确编码,但似乎从utf-8输入文件进行的转换无法工作。