隐藏应用程序资源

时间:2012-06-05 21:28:58

标签: c++ resources sfml

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

修改

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

2 个答案:

答案 0 :(得分:0)

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

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

答案 1 :(得分:0)

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