代码之家  ›  专栏  ›  技术社区  ›  Paul J. Lucas

为NSIS的LangString指定非ASCII字符

  •  7
  • Paul J. Lucas  · 技术社区  · 13 年前

    我正在使用NSIS为我的应用程序生成Windows安装程序。我想要一个多语种的安装程序。我在用 LangString

    然而,文档似乎没有说明应该如何编码非ASCII字符。例如,要使用德语单词“bentigt”(其中“o”有一个元音变音符),我应该如何编码?

    4 回复  |  直到 13 年前
        1
  •  3
  •   Paul J. Lucas    13 年前

    只是更容易使用 Unicode version of NSIS . 然后整个问题就解决了。

        2
  •  2
  •   Anders    13 年前

    我想我们是在讨论ANSI版本的NSIS。。。

    NSIS并不真正关心字符串是如何编码的,但是如果有很多不同语言的字符串,那么最好将LangString命令放在可以使用的外部文件中!包括。这样,您可以使用不同的代码页和文本编辑器编辑不同的语言文件。

        3
  •  1
  •   Andry    7 年前

    如果你想用NSIS编译器的ANSI版本编译UNICODE字符串,那么你必须把这些字符串分开 .nsi UCS-2 LE BOM (查找 Notepad++ )格式和直接包括。

    main.nsi :

    !ifdef LANG_ENGLISH
    !include "${PROJECT_SRCS_ROOT}\lang_en.nsi"
    !endif
    
    !ifdef LANG_RUSSIAN
    !include "${PROJECT_SRCS_ROOT}\lang_ru.nsi"
    !endif
    
        4
  •  0
  •   unknown404    6 年前