使资源无法访问用户(Make resources inaccessible for user)

2019-09-22 12:43发布

我在C / C ++而即将准备发布写的游戏。

我的问题是:什么是使无法访问用户的资源(图像/声音等)的好办法?

它没有成为一个强大的加密,我只是不想让普通玩家浏览资源文件夹。

截至目前资源不是在Visual Studio项目链接,它们是从路径加载。

Answer 1:

一个简单的方法来处理这将是压缩所有文件到(如果你想成为幻想到一个基于内存的文件系统),你在内存中解压缩密码保护的ZIP文件。

明显的缺点是,你要么需要把一切都在内存或做几个电话,让你想此刻的文件。

编辑:快速搜索给了我这个链接与此相关一个Q&A: 简单的方式使用zlib的解压缩的.zip文件

警告

黑客仍然可以通过应用程序运行时拆卸应用程序使用调试器访问这些字符串。



Answer 2:

这取决于你想有多严重对用户隐藏的东西; 你有多少是愿意投资与回报。 以下是一些建议:

  1. 只需更改/删除您的资源文件的文件扩展名。 大多数普通用户将已经停止。
  2. 通过添加您的应用知道跳过开头有一些额外的字节稍微修改文件损坏它。 额外的字节可能是一个误导性的标题或垃圾。
  3. 在容器/存储资源存档格式类似ZIP或暴雪的MPQ。 可选的密码保护。
  4. 将它们储存在你的可执行的二进制资源。 用户需要使用资源编辑器/观众看到他们。 大多数用户甚至不知道他们的存在。


文章来源: Make resources inaccessible for user