0

In WiX 3 there is Package/@Languages element to specify a list of language the MSI package supports. When using wix convert tool to upgrade to WiX4, this element just gets removed. How do you specify languages in WiX 4 project?

Alex I
  • 2,078
  • 3
  • 18
  • 24

2 Answers2

0

The MSI package language can be set in either of the following ways:

  1. Directly in the Package/@Language attribute.
  2. Using a .wxl file with the Localization/@Culture attribute set.

During the build, the summary information will be set correctly. The Windows Installer does not officially support setting multiple languages on an MSI package, so the Package/@Languages attribute in WiX v3 was unnecessary and could create invalid packages with mismatched languages. That bug was fixed in WiX v4.

Rob Mensching
  • 33,834
  • 5
  • 90
  • 130
0

In case you want the workaround, you can add this to your build system before you sign your package:

WiLangId.vsb script from the Windows MSI SDK with said syntax:

>> WiLangId.vsb [path to .msi] Package [List of language codes, comma separated]

This seems to mimic the behavior of what @Languages was doing, but keep in the mind there is another documented best practice way, although it seems a little more complicated and a harder transition if you're upgrading from Wix v3. https://learn.microsoft.com/en-us/windows/win32/msi/manage-substorages

Also see this discussion: https://github.com/orgs/wixtoolset/discussions/7325

Brady Bess
  • 21
  • 7