Nsis MultiLanguage 在语言选择文本框中显示语言 2 次
Nsis MultiLanguage display language 2 times in language selection textbox
我已经使用 NSIS 3.02.1 创建了我的 windows 应用程序安装程序。
在语言选择文本框中,语言显示2次。
EX.
English/English
Chinese (Simplified) / Hanyu (Jiantizi)
Russian / Russkij...
在我之前的设置中,它是使用 NSIS 2.46 构建的,这种语言设置看起来像:
English
Chinese
Russian...
我不想在我的语言选择设置中更改它。如何在 NSIS 3.02.1 中实现 NSIS 2.46 中定义的语言选择设置?
如果您仍然支持 Windows 95/98/ME,那么我建议您使用 NSIS v2.51,它具有 NSIS v3 的所有安全更新以及语言选择对话框中更好的语言支持。
如果您只支持 Windows 的较新版本,那么您应该将 Unicode True
添加到您的脚本中,这将在语言选择对话框中显示该语言的本地名称,并且支持所有语言所有系统。
如果您坚持使用 NSIS v3 创建 ANSI 安装程序,那么您可以使用未记录的 LANGFILE_LANGDLL_FMT
定义:
OutFile test.exe
RequestExecutionLevel user
!define LANGFILE_LANGDLL_FMT "%NATIVEASCIINAME%" ; %NATIVENAME% can also be used but it will display ? in some cases.
!include "MUI2.nsh"
!insertmacro MUI_RESERVEFILE_LANGDLL
!insertmacro MUI_PAGE_COMPONENTS
!insertmacro MUI_PAGE_INSTFILES
!insertmacro MUI_LANGUAGE "English"
!insertmacro MUI_LANGUAGE "Swedish"
!insertmacro MUI_LANGUAGE "Russian"
!insertmacro MUI_LANGUAGE "SimpChinese"
Function .onInit
!insertmacro MUI_LANGDLL_DISPLAY
FunctionEnd
Section
SectionEnd
我已经使用 NSIS 3.02.1 创建了我的 windows 应用程序安装程序。 在语言选择文本框中,语言显示2次。
EX.
English/English
Chinese (Simplified) / Hanyu (Jiantizi)
Russian / Russkij...
在我之前的设置中,它是使用 NSIS 2.46 构建的,这种语言设置看起来像:
English
Chinese
Russian...
我不想在我的语言选择设置中更改它。如何在 NSIS 3.02.1 中实现 NSIS 2.46 中定义的语言选择设置?
如果您仍然支持 Windows 95/98/ME,那么我建议您使用 NSIS v2.51,它具有 NSIS v3 的所有安全更新以及语言选择对话框中更好的语言支持。
如果您只支持 Windows 的较新版本,那么您应该将 Unicode True
添加到您的脚本中,这将在语言选择对话框中显示该语言的本地名称,并且支持所有语言所有系统。
如果您坚持使用 NSIS v3 创建 ANSI 安装程序,那么您可以使用未记录的 LANGFILE_LANGDLL_FMT
定义:
OutFile test.exe
RequestExecutionLevel user
!define LANGFILE_LANGDLL_FMT "%NATIVEASCIINAME%" ; %NATIVENAME% can also be used but it will display ? in some cases.
!include "MUI2.nsh"
!insertmacro MUI_RESERVEFILE_LANGDLL
!insertmacro MUI_PAGE_COMPONENTS
!insertmacro MUI_PAGE_INSTFILES
!insertmacro MUI_LANGUAGE "English"
!insertmacro MUI_LANGUAGE "Swedish"
!insertmacro MUI_LANGUAGE "Russian"
!insertmacro MUI_LANGUAGE "SimpChinese"
Function .onInit
!insertmacro MUI_LANGDLL_DISPLAY
FunctionEnd
Section
SectionEnd