WiX:VS2013 如何更改输出目录
WiX: VS2013 How to change output directory
我在 VS2013 中有一个 WiX 项目。
wixproj 中的输出目录是:
bin$(Platform)$(Configuration)\
事实上是
\bin\x64\Release\en-us
如何以及在哪里可以将实际输出更改为
\bin\x64\Release\
?
首先,这是发生的原因。当您指定要构建的多个区域性时(例如,en-US 和 ja-JP),Visual Studio 需要一种方法来区分生成的安装包。这就是为什么您获得附加了文化字符串的输出路径的原因。
如果您只有一种文化,您可以在项目属性→构建→常规→要构建的文化中指定它。
所以解决方案之一是使用单一文化。如果无法做到这一点,您可以修改 wix2010.targets 并编辑目标 Link。原始目标在 Light 任务下的第 2497 行有此代码:
OutputFile="$(TargetDir)%(CultureGroup.OutputFolder)$(TargetName)$(TargetExt)"
然后您需要删除 %(CultureGroup.OutputFolder)
。不要忘记区分不同的文化。这种差异化的一种解决方案是(未测试):
OutputFile="$(TargetDir)$(TargetName)%(Culture)$(TargetExt)"
传递 ;
(单分号)作为要构建的文化列表。
WiX 将其解释为一个单一的空文化代码,意思是 "neutral culture"。
我在 VS2013 中有一个 WiX 项目。
wixproj 中的输出目录是:
bin$(Platform)$(Configuration)\
事实上是
\bin\x64\Release\en-us
如何以及在哪里可以将实际输出更改为
\bin\x64\Release\
?
首先,这是发生的原因。当您指定要构建的多个区域性时(例如,en-US 和 ja-JP),Visual Studio 需要一种方法来区分生成的安装包。这就是为什么您获得附加了文化字符串的输出路径的原因。
如果您只有一种文化,您可以在项目属性→构建→常规→要构建的文化中指定它。
所以解决方案之一是使用单一文化。如果无法做到这一点,您可以修改 wix2010.targets 并编辑目标 Link。原始目标在 Light 任务下的第 2497 行有此代码:
OutputFile="$(TargetDir)%(CultureGroup.OutputFolder)$(TargetName)$(TargetExt)"
然后您需要删除 %(CultureGroup.OutputFolder)
。不要忘记区分不同的文化。这种差异化的一种解决方案是(未测试):
OutputFile="$(TargetDir)$(TargetName)%(Culture)$(TargetExt)"
传递 ;
(单分号)作为要构建的文化列表。
WiX 将其解释为一个单一的空文化代码,意思是 "neutral culture"。