Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/wix/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Localization 在运行时更改WIX安装程序语言_Localization_Wix_Installation_Windows Installer - Fatal编程技术网

Localization 在运行时更改WIX安装程序语言

Localization 在运行时更改WIX安装程序语言,localization,wix,installation,windows-installer,Localization,Wix,Installation,Windows Installer,不带Setup.exe启动器的多语言MSI软件包 请帮助我使用wix创建不带Setup.exe的多语言MSI包 我已经为不同的语言创建了mst文件,并使用EmbedTransform工具将其嵌入,但它仅适用于命令lint选项,如msiexec/I SampleMulti.msi TRANSFORMS=“:fr-fr.mst”。如果我改变我机器的语言并直接使用msi安装,它就不起作用了 我已经按照下面的链接后,但它也没有工作 如果我们可以从下拉列表中选择语言,并根据需要更改安装程序语言,也可以

不带Setup.exe启动器的多语言MSI软件包

请帮助我使用wix创建不带Setup.exe的多语言MSI包

我已经为不同的语言创建了mst文件,并使用EmbedTransform工具将其嵌入,但它仅适用于命令lint选项,如msiexec/I SampleMulti.msi TRANSFORMS=“:fr-fr.mst”。如果我改变我机器的语言并直接使用msi安装,它就不起作用了

我已经按照下面的链接后,但它也没有工作

如果我们可以从下拉列表中选择语言,并根据需要更改安装程序语言,也可以


请帮帮我

转换必须在MSI启动时应用,这是底线。机器的语言也不相关-如果您有一个单独的exe来启动MSI,那么系统语言将是一种有用的默认语言,但是没有什么可以阻止任何人在德语操作系统上安装英语MSI。Windows如何知道您拥有哪些转换文件,并在安装过程中自动应用这些文件


如果希望用户选择语言,则仍然需要一个启动程序,在MSI启动命令行中添加相关转换。为什么单独的exe是一个大问题

您可以按照本网站上的说明操作:

简要介绍了以下步骤:

  • 创建一个基本MSI包,默认语言为英语/回退语言
  • 您可以为要包括的所有其他语言创建转换
  • 您将这些转换嵌入到MSI包中(因此基本上只有一个MSI文件)
  • 您可以调整摘要信息流
使用的脚本取自Windows SDK。使用此方法,您可以启动MSI,并根据为您的系统配置的区域选项(不是UI语言),Windows Installer将以相关语言(如果包含转换)或英语(如果Windows Installer找不到任何适当的语言转换)显示安装


我自己使用它,包括5种语言,工作起来很有魅力。

请查看我对如何创建自动检测MSI的回答。(我想发表评论,但我没有这个特权。)

谢谢!客户需要msi安装程序,因为exe可能在他们的网络中受到限制,或者他们担心安全性。是的,没有什么可以阻止德语操作系统上的英语msi,但如果客户希望应用程序使用德语,则无法实现本地化目的。msi安装程序是否可以提供语言列表框,然后相应地更改安装语言?目前,我正在使用exe启动器读取机器语言并通过转换调用msi安装程序,但客户需要msi,因此我希望通过msi安装程序满足该要求。谢谢!我已经考过德语了,效果很好。我会做进一步的测试,并让后,如果我会有任何问题。感谢您的帮助。这是一个未记录的不受支持的功能,请小心。