【问题标题】:Hiding application resources隐藏应用程序资源
【发布时间】:2012-06-09 22:33:03
【问题描述】:

我正在使用 C++ 中的 SFML 1.6 制作一个简单的游戏。当然,我有很多图片、关卡和数据文件。问题是,我不希望这些文件可见。现在它们只是res/ 子目录中的普通图片文件,我想隐藏它们或加密它们。是否可以将文件中的原始数据放入资源文件或其他东西中?任何解决方案对我来说都可以,我只是不希望将文件暴露给用户。

编辑

最好的跨平台解决方案,但如果它们不存在,那没关系,我正在使用 Windows。但如果不需要,我真的不想使用库。

【问题讨论】:

    标签: c++ resources sfml


    【解决方案1】:

    大多数环境都带有一个资源编译器,可以将图像/图标/等转换为字符串数据并将它们包含在源代码中。

    另一种常见的技术是将它们复制到最终 .exe 的末尾,作为构建过程的最后一部分。然后在运行时,将 .exe 作为文件打开并从某个确定的偏移量读取数据,请参阅Embedding a filesystem in an executable?

    【讨论】:

    • 我用的是eclipse,有没有教程可以用它做资源编译器?
    • 它是否适用于普通的 ol' 图像、数据文件和字体?因为它显示了图标的示例...
    • 图标只是图像数据,我不知道你是否可以让winres处理任意文件。 ps见编辑
    【解决方案2】:

    为此,理想的方法是制作您自己的存档格式,该格式将包含您的所有文件数据以及在其中明确拆分文件所需的一些额外信息。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-01-13
      • 1970-01-01
      • 1970-01-01
      • 2012-06-18
      • 2020-03-30
      • 2012-03-21
      • 2017-07-29
      相关资源
      最近更新 更多