安装程序
所以我有两个Wix项目,一个是包含Product.wxs文件的主要项目,另一个是共享.wxs文件库。我们的主要Wix项目引用了库中的一个。这也是Visual 2015解决方案中的所有内容。主要的Wix项目也有一个.wxl文件(WixLocalization文件)。
我想要实现的
我想将这个.wxl文件移到库Wix项目中,因为它也可以为其他项目共享。
--我遇到的问题
当我将文件复制到库项目并删除主项目中的原始文件时,我会在Visual中看到一堆编译错误:“本地化变量!(loc.NameOfString)是未知的。请确保定义了该变量”。当我编译主项目时,我会得到这个错误。Wix库编译成功。因此,由于这个原因,我不能再创建安装程序了。
我到目前为止做了什么,
我尝试过在Wix库项目中搜索这种使用.wxl文件的主题,但没有成功。
如果除了"!(loc.StringName)“语法之外,这些字符串值被移到Wix库中,那么我尝试探究是否还有其他语法来使用这些字符串值。
我也检查了项目文件,以查看是否需要添加引用或其他内容。有趣的是,.wxl中的字符串值仅在库本身的.wxs文件中使用。例如,我在库中有一个UI对话框.wxs文件,它使用来自.wxl文件的"!(loc.Title)“字符串值。主项目中的Product.wxs文件不使用这些字符串值。
我觉得很奇怪,Wix库项目无法在其内部找到/使用.wxl .
我真的很想让它在库中工作,所以我们只有一个.wxl文件,其中包含我们使用的所有字符串值,所以我们不必为其他主要的Wix项目一次又一次地复制和粘贴同一个文件。
任何类型的帮助都将不胜感激。如果我不清楚,请随时要求澄清任何混乱的细节。拜托了,谢谢!
发布于 2017-03-27 18:45:39
您所需要做的就是告诉WiX链接器在构建主项目时使用哪种区域性。WiX库可能包含多个区域性,因此需要选择一个。
在使用Visual项目时,只需在项目的属性表中执行。右击>属性>生成>要构建的区域性。

相反,当使用命令行时,它是“light.exe”的以下参数:
-cultures:<cultures> semicolon or comma delimited list of localized
string cultures to load from .wxl files and libraries.
Precedence of cultures is from left to right.示例:
light.exe [other parameters] -cultures:en-UShttps://stackoverflow.com/questions/43009421
复制相似问题