首页 > 解决方案 > Linux中LoadString函数的等价物是什么?

问题描述

Windows 中定义的 LoadString 函数可用于从 dll 或 exe 等资源加载字符串。

Linux 中的 LoadString 等效函数是什么?

标签: clinuxwindows

解决方案


正如评论中所指出的,没有单一的 Linux 操作系统支持从可执行文件中提取资源。Linux 中有多个选项用于国际化 (i18n)、本地化 (l10n),可以满足您的要求。

根据您的目标(消息的外部化、对 i18n 的支持……),不同的编程语言中存在类似的功能:

  1. Java 有资源(可以添加到 JAR 文件中),
  2. LIBC 提供 gettext(通过外部消息文件“.po”文件)。见https://en.wikipedia.org/wiki/Gettext
  3. 许多脚本环境(python、perl)通过模块提供 gettext 接口。
  4. 大多数基于 GUI 的框架都支持外部资源(Gnome、Xt/X11、...)

作为旁注,可以使用 dlsym 动态查找来实现“LoadString”,假设消息被编译到可执行文件中(作为“C”代码或类似代码)。可能是最后的选择。


推荐阅读