>当我从 2.0 版迁移到 4.0 版后从 WIx 安装程序的命令行运行以下命令时:
E:SourceTestProgrambuilder>ant -v -f Build.xml -Dlabel =.001 install
我收到以下错误:
[exec] light.exe:错误 LGHT0199:Wix本地化元素有一个 "Wix本地化"的命名空间不正确。 请使 Wix本地化元素如下所示:。 [蚂蚁]正在退出 E:\源\TestProgram1.0.1English_installer.xml。
我想知道错误的根本原因?
我检查了"TestProgram1.0.1English_Installer.wxs"
文件中的">WixLocalization
",但没有找到任何东西。
请帮助我解决问题。
更新:wixlibs - 另一个我没有使用过的功能。
- 本地化扩展 - wixlib 可能是一个本地化文件。
- 什么是.wixlibs,为什么要使用它们?
- 创建二进制 .wixlib。
鲍勃对此了如指掌,但让我提出一个问题,以防问题出在别的地方。只是为了验证,您可以检查相关项目中的所有*.wxl files
(本地化文件(吗?只是为了确保指定的架构符合版本 4 的期望?
WiX 4 :
English.wxl
:
<?xml version="1.0" encoding="utf-8"?>
<WixLocalization Culture="en-us" xmlns="http://wixtoolset.org/schemas/v4/wxl">
<String Id="YOURLOCID">Your localized string</String>
</WixLocalization>
WiX 3:
English.wxl
:
<?xml version="1.0" encoding="utf-8"?>
<WixLocalization Culture="en-us" xmlns="http://schemas.microsoft.com/wix/2006/localization">
<String Id="YOURLOCID">Your localized string</String>
</WixLocalization>
建议:
- 因此,如果WiX 4缺少本地化文件,则可以创建一个本地化文件(
*.wxl
(。要么在Visual Studio中,要么将其滑入批处理生成脚本中。 - 如果那里有
*.wxl
,可以将架构更新为<WixLocalization Culture="en-us" xmlns="http://wixtoolset.org/schemas/v4/wxl">
。 - 有关命令行,请参阅:如何:生成安装程序的本地化版本。
您正在使用不支持 WiX v4 的 Ant 任务。坚持使用 WiX v3(最新支持的版本(。