gpt4 book ai didi

c++ - 合并应用程序资源 - mac

转载 作者:行者123 更新时间:2023-11-28 08:00:53 24 4
gpt4 key购买 nike

我有一个 mac 应用程序,想隐藏它的资源。在 Windows 上,我只是制作了一个资源文件,但在 Mac 上似乎不存在这些资源文件。所以我决定听从this的建议链接。

在另一个预先准备资源的应用程序中,我要做的是获取我所有的资源(文本文件、图像、声音文件等)并将它们分别转换为 CFData对象。然后我将把它们存储在 CFDictionary 对象中,文件名作为键。之后,我要把字典保存到一个文件中。

问题是,CFDictionary 对象不知道如何归档自己,我不能使用 Foundation 对象,只能使用 Core Foundation。有没有办法将 CFDictionary 转换为 char* 并保存?还是我必须单独保存键和值并稍后读取它们以重新创建 CFDictionary?如果是这样,我将如何转换 CFData 对象?

最佳答案

我找到了 this interesting page它具有将 CFDictionary 转换为 CFData 的实用方法:

inline CFDataRef makeCFData(CFDictionaryRef dictionary)
{
return CFPropertyListCreateXMLData(NULL, dictionary);
}

不过,我不知道它是否适用于图像和声音。您可能必须先将它们转换为 CFData

关于c++ - 合并应用程序资源 - mac,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11494019/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com