light.exe:错误LGHT0199:Wix本地化元素具有不正确的命名空间"Wix本地化"



>当我从 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(最新支持的版本(。

最新更新