msi wix中的本地化消息框按钮

时间:2014-05-06 19:16:20

标签: wix windows-installer

我为en-US和fr-FR文化创建了wix安装程序。安装程序有自定义操作,检查是否启动了一些应用程序如果它启动它从javascript调用Session.Message(重试|取消)。

另外en-US.msi和fr-FR.msi安装程序工作正常(重试和取消按钮具有本地化)。但是,当我制作“Morphing安装程序”http://wix.tramontana.co.hu/tutorial/transforms/morphing-installers时,它不起作用(重试和取消按钮没有本地化)。

注意: 1)Session.Message的标题有翻译(我正确理解我正确构建“Morphing installer”并从命令行启动它)。 2)经过一些实验后,我将UIRef Id =“WixUI_Minimal”添加到我的安装程序中。这个hack也为Session.Message按钮添加了一些额外的对话框和翻译。但是这个hack只适用于安装卸载它不起作用。

PS: 我尝试使用utils的标准CloseApplication,但它不合适(忽略忽略按钮)。本地化工作正常。如果有人知道如何隐藏它,那就太好了。

2 个答案:

答案 0 :(得分:1)

由于您已有转换文件,因此可以尝试Multi-Language MSI-packages without Setup.exe launcher中描述的方法。此处还为摘要信息流中的所有语言设置了语言ID,可能是导致问题的原因。 但有一点需要注意:微软不支持该方法本身(尽管他们自己也使用这种方法,但我对此没有任何问题)并决定使用哪种语言基于本地化格式< / em>在区域选项中而不是基于GUI语言 我不知道这是否解决了自定义操作的问题,但值得一试,因为它将设置安装包的语言。

答案 1 :(得分:0)

通过将自定义操作属性Execute ='deferred'替换为Execute ='immediate'来解决问题。

感谢。