我正在开发一款游戏,根据我所使用的声音 Assets 的许可协议(protocol),其中一项要求是它们以一种最终用户无法访问的方式分发。所以,我正在考虑将它们聚合到一个平面文件中,对它们进行加密或类似的操作。问题是我正在使用的声音库 (Hekkus Sound System) 只接受“char*”文件路径并在内部处理文件读取。所以,如果我要继续使用它,我将不得不覆盖 c stdio 文件函数来处理加密或我决定做的任何事情。这似乎是可行的,但它让我担心。在网上看,我看到人们在我关注的平台(Win32、Android 和 iOS)上执行此操作时遇到奇怪的令人沮丧的问题。
有没有一个跨平台的库可以解决这个问题?您会完全推荐更好的方法吗?
最佳答案
您是否可以选择使用命名管道而不是普通文件?如果是这样,您可以将管道作为要读取的文件提供给声音库,然后您可以解密数据并将其写入管道,没问题。 (有关命名管道的说明,请参阅 Beej's Guide。)
关于c++ - 覆盖c库文件函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18597045/