繁体   English   中英

如何仅在sis中使用unicode?

[英]how to use only unicode in nsis?

我正在评估nsis。 我想创建一个安装程序(使用mui2),它将使用提供的Unicode字符串(用于标题,按钮,标签等),而不使用任何“本地化”。

例如:应用程序标题包含来自不同语言的unicode字符(例如:“ Λεξικό-Dictionary-Речник ”将是整个标题,而不管用户“语言”如何)

是否有一种简单的方法可以独立于mui语言使用提供的确切unicode字符串?

编辑(如上所述):以上内容是关于按钮和一般UI文本(无本地化)的Unicode字符串。 与任何源(或目标)“文件名”或“路径”无关。

NSIS不会翻译名称,只要使用非ASCII字符,请确保将.NSI源文件另存为带有BOM / Signature的UTF-8或带有BOM的 UTF-16。

Unicode True
Name "Λεξικό-Dictionary-Речник"
OutFile "MyInstaller.exe"
InstallDir "$ProgramFiles\$(^Name)"

!include MUI2.nsh

!insertmacro MUI_PAGE_WELCOME
!insertmacro MUI_PAGE_DIRECTORY
!insertmacro MUI_PAGE_INSTFILES
!insertmacro MUI_PAGE_FINISH

!insertmacro MUI_LANGUAGE English

Section
SetOutPath $InstDir
File /r "c:\myfiles\*.*"
SectionEnd

也可以从Unicode代码点手动构造Unicode字符:

Section
MessageBox MB_OK "${U+2115}SIS" # DOUBLE-STRUCK CAPITAL N + "SIS"
SectionEnd

问题是我将文件另存为UTF8(!!!)。 将记事本中的文件另存为Unicode后,问题消失了。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM